在FlowDocumentControl中为RScript突出显示语法

时间:2014-10-14 06:56:37

标签: c# regex flowdocument rscript

我们使用以下Regex函数来突出显示字符串和数字

字符串正则表达式功能

public string StringRegEx
{
    get { return @"@?""""|@?"".*?(?!\\).""|''|'.*?(?!\\).'"; }
}

数字正则表达式功能

public string NumberRegEX
{
    get { return @"[0-9].*?(?=:[0-9]*)?"; }
}

在使用这个正则表达式函数时,我们面临一些突出字符串包含数字

的问题
p1 = 1
p2 = 0.2

enter image description here

在此示例中,p1和p2中的1和2也突出显示。如何跳过与字符串一起突出显示的数字?

1 个答案:

答案 0 :(得分:0)

有关如何在处理编程语言片段时正确捕捉事物的更一般方法, take a look here

你的问题可能不是"字符串中的注释,注释中的字符串"但它是相似的,即"字符串中以数字开头的字母,以字母开头的数字"因此,对于您想要的不同匹配,您需要使用与管道分离的正则表达式类似的方法。

here 给出了对此设计模式的更全面的解释。