我正在尝试使用正则表达式执行以下操作...
我到目前为止http://regex101.com/r/yW1pV8 ...
.*[a-zA-Z]{2,}+.*
这似乎符合我的标准,除了它不会阻止我放入其他字符,如$ _!等...
一些正确的测试数据是......
579 International Road
International Road
一些不正确的数据是......
679
3
$£
A
我哪里错了?
答案 0 :(得分:4)
.*
匹配任何,这不是您想要的样子。此外,您不需要+
,因为X{n,}
已经意味着X
至少 n
次。最后,您忘记了0-9
部分。所以看起来会这样:
[a-zA-Z0-9]{2,}
某些正则表达式使用[a-zA-Z0-9]
作为预定义的字符类。例如,在Java中它是\p{Alnum}
。
如果您还想允许空格(根据您的测试数据),请使用\s
:
(?:\s*[a-zA-Z0-9]{2,}\s*)*
答案 1 :(得分:0)
// you are initializing the reader for the file
FileReader inone = new FileReader("myfile.txt");
// reading the first byte to the 't' variable
int t=inone.read();
// if file is empty, 't' will contain -1
// and loop won't start
while (t!=-1) {
// if t does not contain -1, then end of file is not reached
// printing byte
System.out.print((char)t);
// reading the next byte
t=inone.read();
}
对于阿尔法数字