首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Regex -合并正则表达式-字符串的开始和结束

Regex -合并正则表达式-字符串的开始和结束
EN

Stack Overflow用户
提问于 2016-07-11 20:28:39
回答 1查看 252关注 0票数 1

在两个不同的场景中,我有两个我需要的例子:

1.第一个:

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

代码语言:javascript
复制
var message = "Hello World";

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

代码语言:javascript
复制
'Hello World'

我知道我能做到:

代码语言:javascript
复制
message.replace(/^/, "'").replace(/$/, "'");

我的问题:如何用一个regex.做:我是说,像这样的事情:(当然,这不起作用):

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

2.第二个:

同样,简单的字符串:

代码语言:javascript
复制
var message = "Hello World";

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

代码语言:javascript
复制
#Hola Mundo%

当然,我可以:

代码语言:javascript
复制
message.replace(/^/, "#").replace(/$/, "%");

同样的问题:我如何用一个regex做

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

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-07-11 20:37:37

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

如果您想学习regex:

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

解释

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

regex演示

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

解释

  • ^ -字符串的开始
  • [^]* -零或多个字符(在JS中,[^]并不意味着什么)(可以用[\s\S]* / [\w\W]* / [\d\D]*替换以匹配BMP平面上的任何字符)。
  • $ -字符串的末端。

请参阅这个regex演示

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

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38315671

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档