<table((?!</table>).)*</table>
Run Code Online (Sandbox Code Playgroud)
但是,匹配我的所有表格标签
<table(.(?!</table>))*</table>
Run Code Online (Sandbox Code Playgroud)
才不是.第二个似乎是有意义的,如果我试图用文字写出表达,但我无法理解第一个.
有人可以向我解释一下这个区别吗?
作为参考,我从这里得到了"Tempered Greedy Token"这个术语:http://www.rexegg.com/regex-quantifiers.html#tempered_greed
使用正则表达式(Ant中的replaceregexp)如何匹配(然后替换)从行的开头到最后一次出现的斜杠的所有内容?
我需要的是从以下任何一个开始:
../../replace_this/keep_this
../replace_this/replace_this/Keep_this
/../../replace_this/replace_this/Keep_this
把它们变成这个:
what_I_addedKeep_this
看起来它应该很简单,但我没有得到它.我已经制作了正则表达式,它将识别从那里到行尾的最后一个斜杠和匹配,但我需要的是一个匹配从行的开头到最后一个斜杠的所有内容,所以我可以将它全部替换掉.
这是一个Ant构建文件,它读取一堆.txt文件并转换它在其中找到的任何链接.我只想使用replaceregexp,而不是变量或属性.如果可能的话.
嘿.这里的第一个问题,可能非常蹩脚,但我完全吮吸正则表达式:(
我想从一系列字符串中提取文本,这些字符串在连字符之前和之后始终只有字母字符:
string = "some-text"
Run Code Online (Sandbox Code Playgroud)
我需要生成单独的字符串,包括连字符之前和之后的文本.所以对于上面的例子,我需要string1 = "some"和string2 = "text"
我找到了这个,它适用于连字符之前的文本,现在我只需要连字符之后的正则表达式.
谢谢.
我有以下数据框:
df <- structure(list(X2 = c("BB_137.HVMSC", "BB_138.combined.HVMSC",
"BB_139.combined.HVMSC", "BB_140.combined.HVMSC", "BB_141.HVMSC",
"BB_142.combined.HMSC-bm")), .Names = "X2", row.names = c(NA,
-6L), class = c("tbl_df", "tbl", "data.frame"))
Run Code Online (Sandbox Code Playgroud)
看起来像这样
> df
# A tibble: 6 x 1
X2
<chr>
1 BB_137.HVMSC
2 BB_138.combined.HVMSC
3 BB_139.combined.HVMSC
4 BB_140.combined.HVMSC
5 BB_141.HVMSC
6 BB_142.combined.HMSC-bm
Run Code Online (Sandbox Code Playgroud)
我想要做的是.将最后一个字段保留为第二列,分成两列(作为分隔符)
col1 col2
BB_137 HVMSC
BB_138.combined HVMSC
BB_139.combined HVMSC
BB_140.combined HVMSC
BB_141 HVMSC
BB_142.combined HMSC-bm
Run Code Online (Sandbox Code Playgroud)
什么是正确的方法呢?
我的尝试是这样的:
> df %>% separate(X2, into = c("sid","status", "tiss"), sep = "[.]")
# A tibble: 6 …Run Code Online (Sandbox Code Playgroud) 我想在给定子字符串的最后一次出现之前获取字符串。
我的字符串是,
路径 = D:/me/vol101/Prod/cent/2019_04_23_01/image/AVEN_000_3400_img_pic_p1001-1010/pxy/AVEN_000_3400_img-mp4_to_MOV_v1001-1010.mov
我的子串,1001-1010会出现两次。我想要的只是在最后一次出现之前获取字符串。
注意:我的子字符串是动态的,填充不同,但只有数字。
我想要,
D:/me/vol101/Prod/cent/2019_04_23_01/image/AVEN_000_3400_img_pic_p1001-1010/pxy/AVEN_000_3400_img-mp4_to_MOV_v
我已经使用正则表达式和切片,
>>> p = 'D:/me/vol101/Prod/cent/2019_04_23_01/image/AVEN_000_3400_img_pic_p1001-1010/pxy/AVEN_000_3400_img-mp4_to_MOV_v1001-1010.mov'
>>> q = re.findall("\d*-\d*",p)
>>> q[-1].join(p.split(q[-1])[:-1])
'D:/me/vol101/Prod/cent/2019_04_23_01/image/AVEN_000_3400_img_pic_p1001-1010/pxy/AVEN_000_3400_img-mp4_to_MOV_v'
>>>
Run Code Online (Sandbox Code Playgroud)
纯粹使用正则表达式有什么更好的方法吗?
请注意我已经尝试了很多,例如:
我通过使用正则表达式和切片得到了答案,但我想通过单独使用正则表达式来实现..