我有一个字符串,我需要检查该字符串是否包含任何数字。我发现了很多答案,它们仅返回true或false Like this。 但是我要确定的是该数字,然后用另一个字符串替换它。 例如,
let myString = "/example/123/anotherstring"
或
let myString = "/example/anotherstring/123"
字符串可以像上面一样。 预期的输出是123,应该用任何其他字符串替换。喜欢
let expectedString = "/example/replaced/anotherstring"
或
let expectedString = "/example/anotherstring/replaced"
我知道解决此问题的一种方法是,循环此字符串并找到数字的位置,然后替换它。但是我不想那样做。有更好的方法吗?
注意:该数字可以是任何数字,不是静态/已知数字。因此this对我没有帮助。
任何帮助将不胜感激。
答案 0 :(得分:1)
为此,您可以使用string replace(),传递所需的正则表达式来满足您的要求。
let myString = "/example/123/anotherstring"
let newString = myString.replace(/\d+/g, "replaced")
console.log(newString)
myString = "/example/anotherstring/123"
newString = myString.replace(/\d+/g, "replaced")
console.log(newString)
答案 1 :(得分:0)
您可以使用\d+
。
let myString = "/example/123/anotherstring"
const checkNums = (str) => str.replace(/\d+/g,"replaced")
console.log(checkNums(myString))
答案 2 :(得分:0)
只需使用正则表达式将所有数字替换为替代字符串即可:
const myString = "/example/123/anotherstring";
const expectedString = myString.replace(/[0-9]+/g, "alternativestring")
console.log(expectedString);