Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/291.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
从url源提取数据的PHP正则表达式_Php_Regex - Fatal编程技术网

从url源提取数据的PHP正则表达式

从url源提取数据的PHP正则表达式,php,regex,Php,Regex,如何提取hj后的didit,即001 格式将始终为@lit(hj)) 请帮忙 我试过正则表达式 URL: somedoamin.com/r?ammem/hlaw:@field(DOCID+@lit(hj0011)) 我将使用以下方法: \s+(lit)\d+ 我将使用以下方法: \s+(lit)\d+ 试试这个正则表达式: (?<=@lit\(hj)[^)]* 请参阅下面的演示 试试这个正则表达式: (?<=@lit\(hj)[^)]* 请参阅下面的演示 请注意,这将匹配任

如何提取hj后的didit,即001

格式将始终为
@lit(hj))

请帮忙

我试过正则表达式

URL: somedoamin.com/r?ammem/hlaw:@field(DOCID+@lit(hj0011))

我将使用以下方法:

\s+(lit)\d+

我将使用以下方法:

\s+(lit)\d+
试试这个正则表达式:

(?<=@lit\(hj)[^)]*
请参阅下面的演示

试试这个正则表达式:

(?<=@lit\(hj)[^)]*
请参阅下面的演示


请注意,这将匹配任何字符,而不仅仅是数字。实际上,添加了一个仅限数字的备选方案。由于向后看,这一个无效的速度太慢。ibarros发布的一个更好,imhoplus,他说“整数”不是“除此之外的任何东西”,所以同样是一个无用的[^)],它将检查所有字符,而不仅仅是整数。你说的慢是对的,但是有些人更喜欢在正则表达式中实现整个逻辑,而不是在事后选择一个特定的组。这将匹配任何字符,而不仅仅是数字。事实上,添加了一个仅限数字的替代方案。这一个由于向后看而毫无用处地太慢。ibarros发布的一个更好,imhoplus,他说“整数”不是“除此之外的任何东西”,所以同样是一个无用的[^)],它将检查所有字符,而不仅仅是整数。你说的慢是对的,但是有些人更喜欢在正则表达式中实现整个逻辑,而不是事后选择一个特定的组