我有以下字符串:
[27564][85938][457438][273][48232]
Run Code Online (Sandbox Code Playgroud)
我想替换所有[与''.我尝试了以下但它不起作用:
var str = '[27564][85938][457438][273][48232]'
var nChar = '[';
var re = new RegExp(nChar, 'g')
var visList = str.replace(re,'');
Run Code Online (Sandbox Code Playgroud)
我在这做错了什么?
提前谢谢了.
在正则表达式中有没有办法在 PCRE 语法中转义整个文本区域中的特殊字符?
例如。 hey+Im+A+Single+Word+Including+The+Pluses+And.Dots
通常情况下,以匹配正则表达式,我将不得不逃离每一个确切的字符串+,并.与/S IN上面的字符串。这意味着如果字符串是一个变量,则必须寻找特殊字符并手动转义它们。通过告诉正则表达式转义文本块中的所有特殊字符,是否有更简单的方法来做到这一点?
这背后的动机是将其附加到更大的正则表达式中,因此即使有更简单的方法来获得精确匹配,它们也不适用于此处。
嗨,我想在 JavaScript 中创建非常基本的脏话过滤器。
我有一个名为的数组badWords,也有一个名为description. 我不会检查其中是否包含任何坏词description。
这就是我到目前为止所做的。
const badWords = ["Donald Trump","Mr.Burns","Sathan"];
const description = "Mr.Burns entered to the hall."
let isInclude = false;
badWords.forEach(word=>{
if(description.includes(word)){
isInclude = true
}
})
console.log(`Is include`,isInclude)Run Code Online (Sandbox Code Playgroud)
唯一的问题是我必须遍历badWords数组。有没有办法在不循环数组的情况下完成这项工作?
我有一个有很多名字的数组:{'John Doe', 'Peter Shark', ...}.
现在我想比较和匹配一个字符串,例如,如果数组包含它,则'This is your turn John Doe, pls do it'返回名称.该字符串可以是长文本.
我试过这样,但它不起作用:
var searchStr = "This is your turn John Doe, pls do it"
var stringArray = ["John Doe", "Peter Shark"];
return (stringArray.indexOf(searchStr) > -1)
Run Code Online (Sandbox Code Playgroud) 如何使用剧作家expect来检查两个精确匹配之一?
这是我的功能。
export const assertThirdPartyInternetPath = async (
page: Page,
path: string,
) => {
expect(page.url()).toBe(path);
};
Run Code Online (Sandbox Code Playgroud)
我用它来测试维基百科页面的链接。
await this.assertThirdPartyInternetPath('https://en.wikipedia.org/wiki/Larry_Sanger'
但是,维基百科等一些网站会将移动设备(包括剧作家设备)重定向到子m域。
所以我想断言用户位于https://en.wikipedia.org/wiki/Larry_Sanger或https://en.m.wikipedia.org/wiki/Larry_Sanger。我怎样才能做到这一点?
请注意,我想要进行精确匹配;我知道我可以使用expect(string.toContain(myPattern),但我有很多东西要匹配,我想做精确匹配。
我正在寻找一个用javascript编写的函数(不是在jquery中),如果给定的单词完全匹配(不应区分大小写),它将返回true.
喜欢..
var searchOnstring=" Hi, how are doing?"
if( searchText=='ho'){
//output : false
}
if( searchText=='How'){
//output : true
}
Run Code Online (Sandbox Code Playgroud)
谢谢.
我正在尝试检查字符串是否包含以下任何单词:
AB|AG|AS|Ltd|KB|University
Run Code Online (Sandbox Code Playgroud)
我目前的代码:
var acceptedwords = '/AB|AG|AS|Ltd|KB|University/g'
var str = 'Hello AB';
var matchAccepted = str.match(acceptedwords);
console.log(matchAccepted);
if (matchAccepted !== null) { // Contains the accepted word
console.log("Contains accepted word: " + str);
} else {
console.log("Does not contain accepted word: " + str);
}
Run Code Online (Sandbox Code Playgroud)
但由于一些奇怪的原因,这是不匹配的.
我有什么想法我做错了吗?
我试图做一个函数来查找包含数组中所有单词的字符串。
我已经试过了:
function multiSearchOr(text, searchWords){
var searchExp = new RegExp(searchWords.join("|"),"gi");
return (searchExp.test(text))?"Found!":"Not found!";
}
alert(multiSearchOr("Hello my name sam", ["Hello", "is"]))
Run Code Online (Sandbox Code Playgroud)
但是,只有找到其中一个单词时,此警报才会“找到”。
当所有单词都在字符串中时,我需要它来提醒我。
一个例子:
var sentence = "I love cake"
var words = ["I", "cake"];
Run Code Online (Sandbox Code Playgroud)
我希望应用程序在从字符串句子中的数组中找到所有单词时提醒我。当它只找到其中一个词时就没有。
我有这个函数找到整个单词,应该替换它们.它标识空间但不应替换它们,即不捕获它们.
function asd (sentence, word) {
str = sentence.replace(new RegExp('(?:^|\\s)' + word + '(?:$|\\s)'), "*****");
return str;
};
Run Code Online (Sandbox Code Playgroud)
然后我有以下字符串:
var sentence = "ich mag Äpfel";
var word = "Äpfel";
Run Code Online (Sandbox Code Playgroud)
结果应该是这样的:
"ich mag *****"
Run Code Online (Sandbox Code Playgroud)
并不是:
"ich mag*****"
Run Code Online (Sandbox Code Playgroud)
我得到了后者.
如何才能确定空间,但在替换单词时忽略它?
起初这可能看似重复,但我没有找到这个问题的答案,这就是我问的原因.
谢谢
我已经搜索但无法适应我的代码.我正在尝试var toReplace = "warming"进入一个数组,var toReplace = ['global', 'warming']因此它将使用var newWord替换输入中数组中的每个单词,而new newWord只是在一个span中包装单词.谢谢你的帮助!
if (temperature > 90) {
var input = 'ITS GLOBAL EFFING WARMING';
var toReplace = "WARMING";
var emphasisColor = 'cyan';
};
var newWord = `<span style="color: ${emphasisColor}">${toReplace}</span>`;
var regEx = new RegExp(toReplace,"g");
var output = input.replace(regEx, newWord);
Run Code Online (Sandbox Code Playgroud)