Java 匹配正则表达式

Java 匹配正则表达式,java,regex,Java,Regex,如何在文件中找到这样的行 ######## this_is_a_line.sh ######## 我尝试了下面的正则表达式,但它不起作用 (#)+( )+(A-Za-z0-9_)+(.sh)( )+(#)+ 但这似乎不起作用。有人能告诉我出了什么事吗 您使用了(…)(a)而不是[…](a)。使用字符类: #+ +[A-Za-z0-9_]+\.sh +#+ ^^^^^^^^^^^^^ 请参阅(注意,这里的大多数捕获组都是冗余的,我已将它们删除。此外,必须转义以匹配

如何在文件中找到这样的行

########     this_is_a_line.sh     ######## 
我尝试了下面的正则表达式,但它不起作用

(#)+( )+(A-Za-z0-9_)+(.sh)( )+(#)+ 
但这似乎不起作用。有人能告诉我出了什么事吗

您使用了
(…)
(a)而不是
[…]
(a)。使用字符类:

#+ +[A-Za-z0-9_]+\.sh +#+
    ^^^^^^^^^^^^^
请参阅(注意,这里的大多数捕获组都是冗余的,我已将它们删除。此外,
必须转义以匹配文字点。)

[A-Za-z0-9\]+
匹配一个或多个字母、数字或
\

(A-Za-z0-9)+
匹配一个或多个
A-Za-z0-9
(请参阅)

此外,在Java中,您可以使用
\w
来匹配
[A-Za-z0-9\]
,并

不要忘记,您需要将Java模式字符串中的每个
\
加倍(
string-pattern=“\++\\w++\\.sh++”;

#+ +\w+\.sh +#+