Regex 包含不超过1个点的名称空间的php正则表达式
我在代码回购中有一系列调用,如下所示:Regex 包含不超过1个点的名称空间的php正则表达式,regex,netbeans,Regex,Netbeans,我在代码回购中有一系列调用,如下所示: $out = $this->call('myApp.Settings.Menus.something.doSomething', $input); 我想使用regex查找它的所有实例,其中$this->call()的第一个参数只包含一个句点 我想,我越来越接近这个:(?=\$this->call\(')(\.){1}(?='),) 为什么不限制为1个周期?您需要的是一个简单的: '[^.]+?[.][^.]+?' 这意味着任意数量的非点,后跟一
$out = $this->call('myApp.Settings.Menus.something.doSomething', $input);
我想使用regex查找它的所有实例,其中$this->call()
的第一个参数只包含一个句点
我想,我越来越接近这个:(?=\$this->call\(')(\.){1}(?='),)
为什么不限制为1个周期?您需要的是一个简单的:
'[^.]+?[.][^.]+?'
这意味着任意数量的非点,后跟一个点,再加上一些非点
更好的是,更精确一点:
'\w+?([.]\w+?)?'
这与字母数字字符和一个点匹配。第二部分(
可选)?
(你的
(\){1}
只匹配一个句点。)你要找的是一个简单的:
'[^.]+?[.][^.]+?'
这意味着任意数量的非点,后跟一个点,再加上一些非点
更好的是,更精确一点:
'\w+?([.]\w+?)?'
这与字母数字字符和一个点匹配。第二部分(
可选)?
(您的
(\){1}
将只匹配一个句点。)以下内容应该可以使用,命名空间将位于第一个捕获组中:
\$this->call\('([^.]*\.[^.]*),
如果要使用lookback/lookahead,以便名称空间是正则表达式匹配的字符串的唯一部分,则可以使用以下命令:
(?call\(')[^.]*\.[^.]*(?=”,)
以下各项应能正常工作,命名空间将位于第一个捕获组中:
\$this->call\('([^.]*\.[^.]*),
如果要使用lookback/lookahead,以便名称空间是正则表达式匹配的字符串的唯一部分,则可以使用以下命令:
(?call\(')[^.]*\.[^.]*(?=”,)
这是一个安全的正则表达式:
\$this\s*\-\>\s*call\s*\(\s*[\'\"]\.[\'\"]
它解释了语言字符之间的空白,如:
$this -> call ( '.'
它在技术上仍然是正确的语法。此外,这与作为第一个参数的单引号或双引号字符串无关。这是一个安全的正则表达式:
\$this\s*\-\>\s*call\s*\(\s*[\'\"]\.[\'\"]
它解释了语言字符之间的空白,如:
$this -> call ( '.'
它在技术上仍然是正确的语法。此外,这与作为第一个参数的单引号或双引号字符串无关。如何应用正则表达式(哪个引擎,哪个标志,哪个锚定)?我正在neatbeans中进行正则表达式代码搜索,实际上如何应用正则表达式(哪个引擎,哪个标志,哪个锚定)?我正在neatbeans中进行正则表达式代码搜索,实际上我正在尝试排除包含超过1个点的结果。然后使下半部分
(
可选)?
也成为下半部分。您调用的下半部分是哪一部分?我正在尝试排除包含超过1个点的结果。然后使下半部分(
可选)?
也一样。下半部分是哪一部分?