Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/226.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在php中查找word中包含的正则表达式_Php_Regex - Fatal编程技术网

在php中查找word中包含的正则表达式

在php中查找word中包含的正则表达式,php,regex,Php,Regex,下面的PHP正则表达式将匹配包含GB:2的字符串和三个单词中的单词Samsung 但我的数据有时包含GB-2或GB,3等,所以我想将正则表达式更改为GB*,这样它将接受GB之后的任何字符和字母 如何将这个GB*放入正则表达式中 $regex = "~(?i)\bGB:2 (?:\w+\s+){1,3}Samsung\b~"; 我想这就是你要找的- 编辑您必须删除边界,并在您的选择中多一些文字。我已经做了一个改进,它也将使GB前面加上数字或GB-你需要在特殊字符组中添加一个破折号,正如我刚才在你

下面的PHP正则表达式将匹配包含GB:2的字符串和三个单词中的单词Samsung

但我的数据有时包含GB-2或GB,3等,所以我想将正则表达式更改为GB*,这样它将接受GB之后的任何字符和字母

如何将这个GB*放入正则表达式中

$regex = "~(?i)\bGB:2 (?:\w+\s+){1,3}Samsung\b~";

我想这就是你要找的-


编辑您必须删除边界,并在您的选择中多一些文字。我已经做了一个改进,它也将使GB前面加上数字或GB-你需要在特殊字符组中添加一个破折号,正如我刚才在你的文本中注意到的那样。在这个答案中正确地添加了它。

是测试正则表达式的好地方。请给出一些与正则表达式匹配的示例。请看一看,您的测试示例并没有提供您所需的所有组合。请看一看,有些地方它包含Gb-2或Gb,2这样,我如何在Gb之后匹配任何字符或字母要匹配任何字符或字母,请将其插入以下括号中,正如我在示例中所做的。太好了,这就是我想要的
(?i)([0-9]GB|GB)[!@#$%^&*() _,.:-]\w+ (?:\w+\s+){1,3}application