以下是一个很好的缩进Python正则表达式的示例(取自here):
charref = re.compile(r"""
&[#] # Start of a numeric entity reference
(
0[0-7]+ # Octal form
| [0-9]+ # Decimal form
| x[0-9a-fA-F]+ # Hexadecimal form
)
; # Trailing semicolon
""", re.VERBOSE)
现在,我想对bash正则表达式(即sed或grep)使用相同的技术,但到目前为止找不到对类似功能的任何引用。甚至可以缩进(并评论)这样的东西吗?
echo "$MULTILINE | sed -re 's/(expr1|expr2)|(expr3|expr4)/expr5/g'
答案 0 :(得分:1)
你可以使用bash的续行,可能:
echo "start of a line \
continues the previous line \
yet another continuation
oops. this is a brand new line"
注意前两行末尾的反斜杠。他们基本上“逃脱”了新行/换行符,否则会告诉bash你正在开始一个新行,这也隐含地终止了被定义的语句。