-2

我将如何使用正则表达式来做到这一点?

示例输入:This is a sentence 1234 with a bunch of other stuff.

输出:1234

我知道我是否这样做:(?<=This is a sentence).\d\d\d\d我可以用任何东西替换四位数。但我想做完全相反的事情:我想用一些东西替换除了匹配之外的所有东西,在这种情况下什么都没有(即“”)。

4

3 回答 3

1

我们需要用空的""
示例代码替换所有字符:

var="This is a sentence 1234 with a bunch of other stuff";
intVar = var.replaceAll("[a-zA-Z ]", "");

输出将是 1234

于 2013-05-21T17:51:23.627 回答
1

使用全部替换为

\D

作为正则表达式,""并用什么来替换匹配的术语。

\d表示数字字符。

\D表示非数字字符。

编辑:因为你似乎需要一个非常文字的正则表达式......我会运行两个替换,第一个删除数字之前的所有内容,第二个删除数字之后的所有内容。

first = replace("This is a sentence 1234 with a bunch of other stuff",".*[Tt]his is a sentence (?=1234)","")
second = replace(first,"\D+.*","")
于 2013-05-21T17:40:09.743 回答
0

\d+你用or匹配一个数字序列[0-9]+

于 2013-05-21T17:32:12.980 回答