【问题标题】:Regex usage in C# to extract various pattern combinationsC# 中的正则表达式用于提取各种模式组合
【发布时间】:2015-01-07 01:36:11
【问题描述】:

我正在尝试使用 regex.match 从给定字符串中提取各种模式。我有 3 个模式,我必须分别匹配和提取。

第一种模式:以一串字母开头,然后仅是数字

第二个模式:以一串字母开头,然后是数字,然后是一串字母

第三种模式:以数字开头,然后是一串字母

我试过用:

Regex.Match(inputData, @"^(\w+)(\d+)$") // 第一个模式

Regex.Match(inputData, @"^(\w+)(\d+)(\w+)$") // 第二个模式

Regex.Match(inputData, @"^(\d+)(\w+)$") // 第三种模式

但是,我意识到如果提供的字符串无效,'w' 可以指代数字或字母(这会给我带来误报)。对于修复模式匹配的一些帮助,我真的很感激。

谢谢

【问题讨论】:

标签: c# .net regex pattern-matching


【解决方案1】:

(\w+) 替换为您的模式中的以下内容:

([a-zA-Z]+)

这将只包括标准字母,而不包括数字。请注意,如果您的要求还包括其他字符(例如重音字母),则上述模式将不匹配它们。

【讨论】:

    【解决方案2】:

    这似乎是家庭作业。如果你想给你的老师留下深刻印象,你可以阅读维基百科关于正则表达式的文章。

    您将特别注意有关字符类的部分。

    https://en.wikipedia.org/wiki/Regular_expression#Character_classes

    祝你好运!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-10-15
      • 2012-07-15
      • 1970-01-01
      相关资源
      最近更新 更多