gpt4 book ai didi

regex - sed 中的特殊字符

转载 作者:行者123 更新时间:2023-12-04 14:31:33 25 4
gpt4 key购买 nike

有谁知道 sed 中特殊字符的完整列表是什么?是 ?

请不要给出类似的答案,它与 grep 的特殊字符列表相同,因为这只是将我的问题转换为:是否有人知道 grep 中特殊字符的完整列表是什么?是?

最佳答案

这取决于。严格来说,符合标准的 sed 必须只使用基本正则表达式,其中 the standard状态:

BRE 特殊字符及其具有特殊含义的上下文如下:
.[\句点、左方括号和反斜杠应该是特殊的,除非在括号表达式中使用(参见 RE 括号表达式)。包含前面没有反斜杠且不是括号表达式的一部分的 '[' 的表达式会产生未定义的结果。
*星号应该是特殊的,除非在括号表达式中使用,作为整个 BRE 的第一个字符(在首字母 '^' 之后,如果有),或作为子表达式的第一个字符(在首字母 '^' 之后,如果任何);请参阅匹配多个字符的 BRE
^当用作 anchor 时,抑扬符应该是特殊的(参见 BRE 表达式 anchor 定)
或作为括号表达式的第一个字符(请参阅 RE 括号表达式)
$美元符号在用作 anchor 时应该是特殊的。

所以完整的列表是.[\*^$ ,但上下文很重要。此外,许多 sed 提供了使用扩展正则表达式 (ERE) 的选项,这将扩展列表并更改特殊字符的上下文。例如,在没有 ERE 的情况下,使用 \( 形成分组。和 \) ,但带有 ERE ()本身是特殊的,必须转义才能按字面意思匹配。

关于regex - sed 中的特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12446406/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com