【发布时间】:2010-12-07 15:28:29
【问题描述】:
我正在将 Java 代码转换为 C#,并且需要替换使用 Java 的正则表达式。一个典型的用法是
import java.util.regex.Matcher;
import java.util.regex.Pattern;
//...
String myString = "B12";
Pattern pattern = Pattern.compile("[A-Za-z](\\d+)");
Matcher matcher = Pattern.matcher(myString);
String serial = (matcher.matches()) ? matcher.group(1) : null;
应该从匹配的目标字符串中提取捕获组。我会很感激简单的例子。
编辑:我现在添加了代码的 C# 等效项作为答案。
EDIT:Here is a tutorial 关于实际表达式的使用。
编辑:Here is a useful comparison 来自 C# 和 Java(以及 Perl。)
【问题讨论】:
-
@Mehrdad 谢谢。这正是我想要的,尽管这个问题从某个地方得到了反对(也许是重复的,尽管我试图搜索 SO)
-
不知道。不是我。受骗者通常不会投反对票。他们关门了。
-
@Jason:你的意思是?人们不应该在 StackOverflow 上找到他们需要的答案吗?他们应该在谷歌上试试运气,在那里他们可能会找到错误的答案? SO 被制作为寻找编程问题答案的地方。谷歌不是。
-
Jason w: lmgtfy 链接在这里被认为是极具攻击性和非建设性的,请不要再在任何地方发布这些链接。
-
@Jason 我实际上在这个问题上付出了合理的努力。我创建了 Java 代码来说明我的问题并要求 C# 中的等效功能(我已将其作为答案发布)。总而言之,我至少花了一个小时。