【发布时间】:2020-05-07 22:51:05
【问题描述】:
如果字符串在双引号之间并且不是以/ 开头或结尾,我将使用正则表达式来捕获字符串。
但是我想要的正则表达式解决方案。
The regex should not capture
条件 1. 捕获两个双引号或单引号之间的文本。 条件 2. 但如果以 [ 开头并以 ] 结尾,则不应捕获 条件 3. 但如果以 /" 开头并以 /' 结尾或以 /" 开头并以 /' 结尾,则不应该这样做
例子:
正则表达式:\"(\/?.)*?\"
输入:Functions.getJsonPath(Functions.getJsonPath(Functions.getJsonPath(Functions.unescapeJson("test"), "m2m:cin.as"),"payloads_ul.test"),"[/"Dimming Value/"]",input["test"]["in"])
输出:
captured output:
1. "test"
2. "m2m:cin.as"
3. "payloads_ul.test"
4. [/"Dimming Value/"]
5. "test"
6. "in"
预期结果:
1. "test"
2. "m2m:cin.as"
3. "payloads_ul.test"
4. [/"Dimming Value/"]
条件一说明:
捕获双引号或单引号之间的文本。
例子:
输入:"test","m2m:cin.as"
输出:"test","m2m:cin.as"
条件2说明:
如果正则表达式介于以[ 开头和以] 结尾但它有双引号或单引号,那么它也不应该被捕获。
示例:
输入:["test"]
输出:它不应该捕获
条件3解释:
在输入"[/"Dimming Value/"]" 的上述预期结果中,有一个两次双引号,但只捕获了一个不包括/" 的双引号。所以,输出是[/"Dimming Value/"]。像这样,我想要/'(single quote preceded by /)。
注意:
对于输入"[/"Dimming Value/"]" or '[/'Dimming Value/']',这里虽然文本介于双引号和单引号之间并且具有[ 和],但它不应忽略该字符串。输出应该是 [/"Dimming Value/"]。
【问题讨论】:
-
你想要javascript还是java?
-
请编辑您的问题,不清楚您的要求。
-
@WJS,我想要java中的解决方案,我已经编辑了。
-
@SebastianNielsen,感谢您的回复,我已经用解释更新了问题。如果这不能消除您的疑问,请告诉我。