gpt4 book ai didi

javascript - 正则表达式 - 组合正则表达式 - 字符串的开头和结尾

转载 作者:行者123 更新时间:2023-11-27 22:47:27 25 4
gpt4 key购买 nike

我有两个示例来说明两种不同场景的需求:

<强>1。第一个:

如果我有这个简单的字符串:

var message = "Hello World";

我想要这个带有正则表达式的结果:

'Hello World'

我知道我能做到:

message.replace(/^/, "'").replace(/$/, "'");

我的问题:我如何才能用一个正则表达式来实现它。我的意思是,像这样:(当然,这是行不通的):

message.replace(/(^|$)/, "'");

<强>2。第二个:

还是简单的字符串:

var message = "Hello World";

我想要这个带有正则表达式的结果:

#Hola Mundo%

当然,我可以做到:

message.replace(/^/, "#").replace(/$/, "%");

同样的问题:我如何才能用一个正则表达式来实现它?

我知道这是一个简单的问题,但很高兴能得到答案。

最佳答案

满足您需要的最合适方法是使用字符串连接。

如果你想学习正则表达式:


1. message.replace(/^|$/g, "'"); - 您需要使用/g来执行全局搜索和替换

说明:

  • ^ - 字符串开头
  • | - 或
  • $ - 字符串结尾
  • /g - 执行全局搜索和替换

请参阅regex demo

2. message.replace(/^[^]*$/, "#$&%")message.replace(/^[\s\S]*$/, "#$&%")

说明:

  • ^ - 字符串开头
  • [^]* - 零个或多个任意字符(在 JS 中,[^] 表示不是没有)(可以替换使用 [\s\S]*/[\w\W]*/[\d\D]* 匹配以下任意字符BMP 平面)
  • $ - 字符串结尾。

参见this regex demo

替换模式中的$&是整个匹配的反向引用。 $1 引用组 1,即第一个 (...) 捕获组值(如果它是在模式中定义的),但如果您需要引用整个匹配项,则应该使用 $& 构造。

关于javascript - 正则表达式 - 组合正则表达式 - 字符串的开头和结尾,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38315671/

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