只获取带有3.X的字符串

本文关键字:字符串 获取 | 更新日期: 2023-09-27 18:10:31

我有这样的字符串:

 - 3.1 TitleA
 - 3.1.1 TitleB
 - 3.1.1.1 TitleC
 - 3.2 TitleD
 - 3.2.1 TitleE
 - 3.2.2 TitleF
 - 3.3 TitleG

我只想获得以3开头的标题。X我尝试使用(c#):

Match m = Regex.Match(table_of_content[i], "3.[1-999]");

但是它给了我像3.2.1这样的头衔我怎样才能得到以3.X开头的标题?

提前感谢

只获取带有3.X的字符串

一个快速的解决方案是:

@" 3'.'d+ "

假设section号前后各有一个空格。

如果假设适用,这是避免匹配情况的最简单解决方案,例如:

  • 13.2 (3前面出现的另一个数字)
  • 2.3.2 (3不是最高级别断面号)
  • 3.10.1(2级以上分段)

我认为他只需要3。X(不是3.x.x)

(?<!'w|'.)3.'d+(?!'w|'.)

这个