C# 用于在c中匹配I.text的正则表达式#
我试图用c#将PDF解析为XML,我想提取如下标题:I.简介,II。从我的文件中按罗马数字分类的页面布局。我想写一个正则表达式来匹配这样的字符串。我尝试了一些方法,但都不起作用,有人能帮忙吗?这是一个简单的方法 \b[IVX]+。[A-Z]+ 这是最简单的一个 \b[IVX]+。[A-Z]+C# 用于在c中匹配I.text的正则表达式#,c#,regex,roman-numerals,C#,Regex,Roman Numerals,我试图用c#将PDF解析为XML,我想提取如下标题:I.简介,II。从我的文件中按罗马数字分类的页面布局。我想写一个正则表达式来匹配这样的字符串。我尝试了一些方法,但都不起作用,有人能帮忙吗?这是一个简单的方法 \b[IVX]+。[A-Z]+ 这是最简单的一个 \b[IVX]+。[A-Z]+ 这应该满足您的需要: [IVXLCDM]+。[A-Z]+ 如上所述: \。将匹配句点,因为句点字符是正则表达式语法中的特殊字符(表示匹配任何字符) 另一方面,如果要确保字符串仅包含罗马数字和标题名,则可能需
这应该满足您的需要: [IVXLCDM]+。[A-Z]+ 如上所述: \。将匹配句点,因为句点字符是正则表达式语法中的特殊字符(表示匹配任何字符) 另一方面,如果要确保字符串仅包含罗马数字和标题名,则可能需要使用以下选项:
^[IVXLCDM]+\. [A-Z ]+$
^
和$
称为锚定。^
指示正则表达式引擎从字符串的最开头开始匹配,而$
指示正则表达式引擎在字符串的最末尾停止匹配。
罗马数字的完整列表可从中获得,这将满足您的需要: [IVXLCDM]+。[A-Z]+ 如上所述: \。将匹配句点,因为句点字符是正则表达式语法中的特殊字符(表示匹配任何字符) 另一方面,如果要确保字符串仅包含罗马数字和标题名,则可能需要使用以下选项:
^[IVXLCDM]+\. [A-Z ]+$
^
和$
称为锚定。^
指示正则表达式引擎从字符串的最开头开始匹配,而$
指示正则表达式引擎在字符串的最末尾停止匹配。
罗马数字的完整列表可从中获得,这主要适用于:
^[IVXLCDM]+\. [^\p{Ll}]+?$
这将匹配包含数字和符号的标题,但将明确排除Unicode小写字符
此外,请确保使用选项RegexOptions.Multiline,如下所示:(其中inp
是您的输入字符串)
这应该主要起作用:
^[IVXLCDM]+\. [^\p{Ll}]+?$
这将匹配包含数字和符号的标题,但将明确排除Unicode小写字符
此外,请确保使用选项RegexOptions.Multiline,如下所示:(其中inp
是您的输入字符串)