正则表达式将字符串开始到一个数字

时间:2014-11-21 07:52:14

标签: c# regex

我已经阅读了几天的正则表达式指南和教程,但我仍然不知道如何为我的问题编写解决方案。

我需要从以下内容中提取字符串..

The quick brown fox 123 jumps over the lazy dog.

返回

123 jumps over the lazy dog.

基本上从字符串的开头到数字,然后是字符串的其余部分。

3 个答案:

答案 0 :(得分:0)

您可以匹配一个数字(\d),然后匹配多个任意事件(.*),直到字符串结尾($),这很简单,如

\d.*$ 

应该工作。
根据您的需求获得正确的正则表达式通常是一个反复试验的过程,因此请首先测试您使用的正则表达式 - Here

答案 1 :(得分:0)

使用Regex.Replace

Regex.Replace(yourString, @"^\D*(\d+.*)$", "$1");

DEMO

^断言我们刚开始。 \D*匹配零个或多个非数字字符,因此^\D*匹配从开头到第一个数字的所有字符。 (\d+.*)会捕获以下数字以及最后一个字符。用组索引1中的字符替换整个匹配将为您提供所需的输出。

为了简单起见,您也可以使用,

Regex.Replace(yourString, @"^\D*", "");

答案 2 :(得分:0)

^[^\d]+

您也可以使用replace。替换为empty string。请参阅演示。

http://regex101.com/r/vX2wN5/2