如何使用正则表达式选择一组引用之外和之后的字符

时间:2015-02-19 05:23:42

标签: regex vb.net

我正在寻找一个正则表达式来处理VB代码中的注释选择,但不选择字符串中的单引号。而不是选择EoL(\ r \ n)

我可以获得正则表达式来选择前两种情况,即我正在努力争取的第三种情况。

   'select this text to end of line
Dim x As String = "do not select this text" 'select this here to end of line    
Dim x As String = "do not select ' this text" 'select this here to end of line

尝试过Lookaheads等多种变体。 只是不能做对。 在stacko上看到一些其他方法没有正常工作的答案。

2 个答案:

答案 0 :(得分:1)

您可以尝试下面的正则表达式。

'[^"]*$

OR

'['"]*$

DEMO

答案 1 :(得分:1)

'(?![^"]*"(?:[^"]*"[^"]*")*[^"]*$).*$

试试这个。看看演示。

https://regex101.com/r/mS3tQ7/7

这不会选择'

之间的""