php - 如果它不包含特定单词,我该如何匹配?

标签 php regex

这是我的字符串:

$str = "this is a string
        this is a test string";

我想匹配 thisstring 单词(加上它们本身) 之间的所有内容。

注意:这两个词之间可以是除了test这个词之外的所有内容。

所以我试图匹配this is a string,而不是this is a test string。因为第二个包含test这个词。


这是我目前的模式:

/this[^test]+string/gm

But it doesn't work as expected

我该如何解决?

最佳答案

你这样做的方式是排除列表“测试”中的任何字符。这样做的方法是使用 negative lookarounds。正则表达式将如下所示。

this((?!test).)*string

关于php - 如果它不包含特定单词,我该如何匹配?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41530528/

相关文章:

regex - PostgreSQL 正则表达式检查以拉丁字符和字母字符开头

regex - preg_match 数字负数和正数

php - 如何匹配 <iframe> 标签的一部分?

PHP:用户点击忘记密码后如何将原密码发送给用户,密码是md5加密的?

php - MySQL 在同一个 PHP 页面上加载和删除

php UPDATE 查询不起作用

php - 在magento 2中循环集合时创建关联数组

java - 连字符混合单词的正则表达式

php - 重写 php switch 语句的 url

php - 棘手的 MySQL/PHP 数据问题 : calculating totals from sparse data with carry-forward