[\b]
显然匹配退格字符。我无法理解字符串如何包含退格字符。
有人能给我一个具体的例子来说明如何使用它吗?非常感谢。
虽然所有其他人总体上都是正确的(即\b
是单词边界),\b
does表示字符类中的退格键:
[\b]
这确实会匹配退格字符。它只是一个可以出现在文本中的 ASCII 控制字符(ASCII 代码 8,或八进制的 10)。我想它主要用于遗留原因,添加变音符号(例如,你可以这样做a
、 退格键、´
, 要得到á
)。如今,这些大部分已被 Unicode 组合标记所取代。
包含退格键的字符串最终会如何look取决于渲染它的软件。如果退格键后面跟着新的其他字符,控制台可能仍会将光标向后移动并覆盖原来的内容。要查看此内容,请启动交互式脚本控制台(如果您想在 JavaScript 中尝试,请像 Node.js 一样),然后运行
> console.log("abc\b\bdef")
adef
请注意,如果您省略了def
,你就会得到abc
,因为退格键本身不会删除任何内容。它只会将光标向后移动。
另一方面,您的浏览器可能会忽略输入字段中的它。例如,查看统一码转换器 http://rishida.net/tools/conversion/,输入 JavaScript 输入abc\b\bdef
在左下角输入中,点击“转换”,“字符”输出将不会有bc
erased.
顺便一提\b
作为字符类中的退格键并不是 JavaScript 所独有的,但在大多数正则表达式风格中都以这种方式解释。
进一步阅读:
- C 中的“退格”转义字符 '\b',意外行为? https://stackoverflow.com/questions/6792812/the-backspace-escape-character-b-in-c-unexpected-behavior/6792867#6792867
- 使用退格键删除控制台上的字符 https://stackoverflow.com/a/12765325/1633117
- 好维基百科 http://en.wikipedia.org/wiki/Backspace
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)