Julia中的正则匹配
我试图提取嵌入文本字符串中括号内的部分文本:Julia中的正则匹配,julia,Julia,我试图提取嵌入文本字符串中括号内的部分文本: "Dominion Diamond Corporation (DDC) " (我想提取DDC) 仔细阅读interwebs表明正则表达式 "\([^)]*\)" 这将是有用的 我尝试以下方法: ret = Regex(regExp) match(ret, "Dominion Diamond Corporation (DDC) ") 输出: RegexMatch("Dominion Diamond Corporation (DDC", 1="Do
"Dominion Diamond Corporation (DDC) "
(我想提取DDC)
仔细阅读interwebs表明正则表达式
"\([^)]*\)"
这将是有用的
我尝试以下方法:
ret = Regex(regExp)
match(ret, "Dominion Diamond Corporation (DDC) ")
输出:
RegexMatch("Dominion Diamond Corporation (DDC", 1="Dominion Diamond Corporation (DDC")
但是,当我将正则表达式直接输入match函数时:
match(r"\([^)]*\)"t, "Dominion Diamond Corporation (DDC) ")
输出为:
RegexMatch("(DDC)")
这两种表达方式有什么不同?如何在第一个参数中插入任意正则表达式以进行匹配?正如@Laurel在一篇评论中所建议的,单个反斜杠没有传递到
匹配
函数
julia> rstring = "\\([^)]*\\)"
"\\([^)]*\\)"
julia> match(Regex(rstring), "Dominion Diamond Corporation (DDC) ")
RegexMatch("(DDC)")
r“string”
通常指原始字符串(即Python)。我怀疑它以前是在剥反斜杠。不过,我不知道为什么最后会有一个t
;可能一开始就应该想到这一点。在Julia中,r“…”
的意思是“用…构造正则表达式”,因此为了方便起见,保留了反斜杠。