[\b]
显然匹配退格字符。我无法理解字符串如何包含退格字符。
有人可以给我一个具体的例子来说明如何使用它吗?非常感谢。
最佳答案
虽然所有其他的一般都是正确的(\b
是一个单词边界),\b
确实 表示字符类中的退格:
[\b]
这确实会匹配一个退格字符。它只是一个可以出现在文本中的 ASCII 控制字符(ASCII 码 8,或八进制的 10)。我想它主要用于遗留原因,添加变音符号(例如,您可以执行 a
、退格、´
,以获得 á
)。如今,这些已大部分被 Unicode 组合标记所取代。
包含退格键的字符串最终看起来 取决于呈现它的软件。如果退格键后跟新的其他字符,控制台可能仍会将光标移回并覆盖那里的内容。要看到这一点,启动一个交互式脚本控制台(如果你想在 JavaScript 中尝试它,比如 node.js),然后运行
> console.log("abc\b\bdef")
adef
请注意,如果您省略了 def
,您只会得到 abc
,因为退格键本身不会删除任何内容。它只会将光标移回。
另一方面,您的浏览器可能会在输入字段中忽略它。例如,查看 Unicode converter ,在左下角输入JavaScript输入abc\b\bdef
,点击“convert”,输出的“Characters”不会把bc
擦掉。
顺便说一下,\b
在字符类中作为退格键并不是 JavaScript 独有的,但在大多数正则表达式中都是这样解释的。
进一步阅读:
关于javascript - [\b] 退格正则表达式有什么用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17438100/