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
Java 正则表达式匹配一个单词,但不匹配另一个单词_Java_Regex - Fatal编程技术网

Java 正则表达式匹配一个单词,但不匹配另一个单词

Java 正则表达式匹配一个单词,但不匹配另一个单词,java,regex,Java,Regex,我需要一个正则表达式,如果字符串以http://www.xyzabc.com但字符串不应包含单词“getJobId” 例如: http://www.xyzabc.com/abc 我刚刚获取了您的代码并运行了它(删除多余的参数和锚): 印刷品 true true false 看起来正是你想要的,不是吗 更新 在编辑后的答案中,您使用了单反斜杠而不是双反斜杠。更好的正则表达式是 ^(http://www.xyzabc.com)(?!*?getJobId)。*$ (?!*?getJ

我需要一个正则表达式,如果字符串以
http://www.xyzabc.com
但字符串不应包含单词“getJobId”

例如:


http://www.xyzabc.com/abc          我刚刚获取了您的代码并运行了它(删除多余的参数和锚):

印刷品

true
true
false
看起来正是你想要的,不是吗

更新
在编辑后的答案中,您使用了单反斜杠而不是双反斜杠。

更好的正则表达式是

^(http://www.xyzabc.com)(?!*?getJobId)。*$


(?!*?getJobId)
将检查getJobId是否存在,如果存在,则将不匹配

使用此正则表达式
http://www\.xyzabc\.com((?!getJobId)\S)*(?=\S |$)

http://www\.xyzabc\.com
silded const

((?!getJobId)\S)*
不包含getJobId,但可以包含符号


(?=\s |$)
下一个符号空格或匹配是最后一个单词

您应该在回答中解释该正则表达式字符串。@Abu它是OP的正则表达式,因此可以公平地假设他已经理解了它。如果您粘贴的是作为正则表达式传递的Java字符串,请将反斜杠加倍。
true
true
false