2

所以我正在尝试编写一个eat在字符串中匹配(例如:)的java程序

asdasdjhaskldhlasdklsadeaadsasdkljhasdklhjt

所以会发生什么

asdasdjhaskldhlasdklsad_**E**__**A**_adsasdkljhasdklhj_**T**_

所以到目前为止我在正则表达式中得到的是匹配第一个字母......

^([e]+) - E

但我不知道如何在比赛之间允许字母和空格。

4

2 回答 2

4

你可以尝试这样的事情:

e.*?a.*?t

这将匹配最接近的e,at来自输入字符串(您突出显示)。

或者你可以使用一个否定的类,它在较大的字符串上可能更快:

e[^a]*a[^t]*t

[^a]*将匹配任何内容,a并且[^t]*将匹配任何内容,但t.

于 2013-09-27T18:52:44.700 回答
1

你可以使用这样的模式:

e.*a.*t

这将匹配一个e,后跟零个或多个任意字符,后跟一个a,后跟零个或多个任意字符,后跟一个t

于 2013-09-27T18:51:30.733 回答