37

我正在使用一个平台,它使用类似 JavaScript 的语法并允许使用正则表达式转换我的值。

我需要在字符串的开头和结尾添加一个单引号,该字符串将始终包含 9 个字符。

IE:

123456789应转换为'123456789'

我应该使用什么表达方式?

4

7 回答 7

65

您不需要正则表达式。

str = "123456789";

str = "'" + str + "'";
于 2012-06-28T14:37:22.637 回答
10

尽管这个问题被问得有点早,但是新定义的 ES6 中backticks称为Template Literals的标准为使用更简单的语法解决这个问题提供了新的可能性:

const str = '123456789';
const wrapped = `'${str}'`;
于 2018-09-22T18:17:39.370 回答
7

如果它像Javascript,你可以做类似的事情......

var myString = "'" + oldString + "'";

oldString 是你的 123456789

于 2012-06-28T14:37:14.760 回答
1

str = "123456789";
str = str.replace(/^/,"'").replace(/$/,"'")
console.log(str)

于 2020-10-01T09:02:33.157 回答
0

您可以使用文字\\'123456789\'。

于 2012-06-28T14:38:19.343 回答
0

为什么不强制转换为 String 类型:

var strValue = String(123456789);
于 2015-04-10T03:10:14.903 回答
0

或者使用 lodash _.pad

var str = '123456789';
console.log(_.pad(str, 11, '\''));
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.11/lodash.js"></script>

于 2018-11-29T08:47:09.960 回答