Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.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
Regex 如果一行包含_Regex - Fatal编程技术网

Regex 如果一行包含

Regex 如果一行包含,regex,Regex,我不熟悉Regex,但以下是我所拥有的和我正在尝试做的: 如果行包含AAA:BBB请求有效 如果行AAA:包含CCC,则DDD需要位于另一行才能使请求有效 这是我的 `(AAA:.*?\bBBB\b)|(AAA:.*?\bCCC\b)(.*?\bDDD=.*?([0-9A-Za-z_-])\b) 这是我试过但不起作用的东西 另外,对于IF语句,您是否需要像其他编程语言一样的操作?因此您希望在下一行匹配AAA:BBB和AAA:CCCIF,然后是DDD。您可以使用\r?\n而不是*? (A

我不熟悉Regex,但以下是我所拥有的和我正在尝试做的: 如果行包含AAA:BBB请求有效 如果行AAA:包含CCC,则DDD需要位于另一行才能使请求有效

这是我的

   `(AAA:.*?\bBBB\b)|(AAA:.*?\bCCC\b)(.*?\bDDD=.*?([0-9A-Za-z_-])\b)
这是我试过但不起作用的东西


另外,对于IF语句,您是否需要像其他编程语言一样的操作?

因此您希望在下一行匹配
AAA:BBB
AAA:CCC
IF,然后是
DDD
。您可以使用
\r?\n
而不是
*?

(AAA:\s+\bBBB\b|AAA:\s+\bCCC\b\r?\n\bDDD\b)

正如您所看到的,如果它后跟
DDD
,则它只匹配
AAA:CCC


如果您能更清楚地解释您的问题,那将很有帮助。如果DDD行高于AAA:CCC怎么办?好的,但如果它大于1行,并且可以更改每个请求的数量怎么办?如果DDD行高于或低于AAA:CCCYes,则代码只起作用,因为这是您在问题中所说的。