用单词regex php替换单词

奥斯汀·克雷格尔

我需要能够搜索字符串并替换诸如“ me”,“ my”,“ i”之类的单词,并将其替换为诸如“ you”和“ your”之类的单词。基本上,我需要能够更改主题的拥有权。

例子

User input: "Can you remind me to feed my dog tonight?"
Response  : "Sure I can remind you to: feed your dog tonight"

其中“提醒我”是一个命令,因此可以忽略,但应将“我的”更改为您的命令。但是,我将把字符“ m”和“ y”的每个集合更改为“ your”。所以像astronomy现在这样的话astronoyour我不要

public static function userToServer($string){
   $pos = array(' me '=>'you', ' i '=>'you','we'=>'we','us'=>'you','you'=>' i ', ' my '=>'your');
   foreach($pos as $key => $value){
      if(strpos($string, $key) !== false){
          $result = str_replace ($key, $value, $string );
          print_r($result);
          return  $result;
      }
   }
  return null;
}
public static function parse($string, $commands){
  foreach($commands as $c){
     if(stripos($string,$c) !== false){
        $params = explode($c, $string);
        $com[$c] =$params[1];
     }
   }
   if(isset($params)){
     foreach($com as $key => $value){
       if($key ==='remind me to'){
          //$user->addEventToCalender($value);
          //echo $value;
          echo 'Okay, I will remind you to '.String::userToServer($value);
       }
     }
   }
}

以及使用上述功能的示例输出

Using $_GET['input'] as $input
Original: Will you remind me to secure funds for my business
Response: Okay, I will remind you to secure funds for my byouiness

我确定我必须创建自己的方式来解决此问题,但是我想问一下,因为我知道regex是一个很好的工具,而且我可能会忽略解决方案。

半工作演示

此演示网址显示了我正在使用的当前代码,并将在收到答案时进行更新。请随时查看:)

直接链接到有问题的字符串类:http : //api.austinkregel.com/butler/string-class

用户名
<?php


  function userToServer($string){

      $in=array('#\bcat\b#','#\bdog\b#');
      $out=array('fish','frog');
      $string=preg_replace($in,$out,$string);  
      return $string;
    }


   echo userToServer("cat eat dog but not doge");  //fish eat frog but not doge


?>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

用准备插入vi / vim的单词替换单词?

来自分类Dev

用HTML文本区域中的php变量替换单词

来自分类Dev

用其他单词替换单词列表

来自分类Dev

用其他单词替换某些单词系列

来自分类Dev

获取以'('开头的单词-PHP regex

来自分类Dev

用php中的点值替换单词

来自分类Dev

用一个单词替换多个单词

来自分类Dev

php用可选的括号替换单词

来自分类Dev

用适当数量的“ *”替换偶数单词

来自分类Dev

用R中的部分匹配替换整个单词或多个单词

来自分类Dev

php用大写单词替换描述中的特定单词并遍历它

来自分类Dev

用jQuery替换以@符号开头的单词

来自分类Dev

用附加的计数替换单词实例

来自分类Dev

用数据框中的单词替换列表中的单词,Python

来自分类Dev

用RegEx替换2个单词之间最后出现的单词

来自分类Dev

用其他单词替换某些单词系列

来自分类Dev

用REGEX计算文本中的单词

来自分类Dev

用php中的链接替换单词

来自分类Dev

(PHP)如何查找以模式开头的单词并替换所有单词?

来自分类Dev

用递增的值替换匹配的单词之后的单词

来自分类Dev

用加号替换单词

来自分类Dev

PHP替换多个单词

来自分类Dev

Sublimetext2用多个单词替换多个单词

来自分类Dev

用表格替换单词(Javascript)

来自分类Dev

用各种条件替换单词“ open”

来自分类Dev

用文件中的单词替换</ div>

来自分类Dev

用php中的点值替换单词

来自分类Dev

使用sed用列表中的单词替换单词的多次出现

来自分类Dev

Tampermonkey用图像替换单词