相关疑难解决方法(0)

如何在JavaScript中替换所有出现的字符串

我有这个字符串:

"Test abc test test abc test test test abc test test abc"
Run Code Online (Sandbox Code Playgroud)

str = str.replace('abc', '');
Run Code Online (Sandbox Code Playgroud)

似乎只删除abc上面字符串中的第一次出现.如何更换所有出现的内容?

javascript string replace

4081
推荐指数
47
解决办法
319万
查看次数

如何检查字符串"StartsWith"是否是另一个字符串?

我如何String.StartsWith在JavaScript中编写等效的C#?

var haystack = 'hello world';
var needle = 'he';

haystack.startsWith(needle) == true
Run Code Online (Sandbox Code Playgroud)

注意:这是一个老问题,正如评论中指出的ECMAScript 2015(ES6)引入了该.startsWith方法.但是,在撰写此更新时(2015年),浏览器支持还远未完成.

javascript string startswith

1660
推荐指数
11
解决办法
92万
查看次数

JavaScript不区分大小写的字符串比较

如何在JavaScript中执行不区分大小写的字符串比较?

javascript string

963
推荐指数
13
解决办法
71万
查看次数

用于Javascript正则表达式的转义字符串

可能重复:
Javascript中是否有RegExp.escape函数?

我正在尝试根据用户输入构建一个javascript正则表达式:

function FindString(input) {
    var reg = new RegExp('' + input + '');
    // [snip] perform search
}

但是当用户输入包含一个?*因为它们被解释为正则表达式特殊时,正则表达式将无法正常工作.实际上,如果用户将不平衡([字符串放入其中,则正则表达式甚至无效.

什么是正确转义所有特殊字符以在正则表达式中使用的javascript函数?

javascript regex escaping

469
推荐指数
1
解决办法
27万
查看次数

MongoDB:是否可以进行不区分大小写的查询?

例:

> db.stuff.save({"foo":"bar"});

> db.stuff.find({"foo":"bar"}).count();
1
> db.stuff.find({"foo":"BAR"}).count();
0
Run Code Online (Sandbox Code Playgroud)

case-insensitive mongodb

281
推荐指数
18
解决办法
23万
查看次数

Javascript Regex:如何将变量放在正则表达式中?

例如:

function(input){
    var testVar = input;
    string = ...
    string.replace(/ReGeX + testVar + ReGeX/, "replacement")
}
Run Code Online (Sandbox Code Playgroud)

但这当然不起作用:)有没有办法做到这一点?

javascript regex variables

183
推荐指数
6
解决办法
14万
查看次数

用多个其他字符串替换多个字符串

我正在尝试用多个其他单词替换字符串中的多个单词.字符串是"我有一只猫,一只狗和一只山羊."

然而,这不会产生"我有一只狗,一只山羊和一只猫",而是产生"我有一只猫,一只猫和一只猫".是否可以在JavaScript中同时用多个其他字符串替换多个字符串,以便生成正确的结果?

var str = "I have a cat, a dog, and a goat.";
str = str.replace(/cat/gi, "dog");
str = str.replace(/dog/gi, "goat");
str = str.replace(/goat/gi, "cat");

//this produces "I have a cat, a cat, and a cat"
//but I wanted to produce the string "I have a dog, a goat, and a cat".
Run Code Online (Sandbox Code Playgroud)

javascript regex string replace node.js

183
推荐指数
6
解决办法
18万
查看次数

如何使用javascript转义正则表达式特殊字符?

我需要使用java脚本转义正则表达式特殊字符.如何实现这一点?任何帮助都应该被理解.


感谢您的快速回复.但我需要逃避正则表达式的所有特殊字符.我已经尝试了这段代码,但我无法达到结果.

RegExp.escape=function(str)
            {
                if (!arguments.callee.sRE) {
                    var specials = [
                        '/', '.', '*', '+', '?', '|',
                        '(', ')', '[', ']', '{', '}', '\\'
                    ];
                    arguments.callee.sRE = new RegExp(
                    '(\\' + specials.join('|\\') + ')', 'gim'
                );
                }
                return str.replace(arguments.callee.sRE, '\\$1');

            }

function regExpFind() {
            <%--var regex = new RegExp("\\[munees\\]","gim");--%>
                    var regex= new RegExp(RegExp.escape("[Munees]waran"));
                    <%--var regex=RegExp.escape`enter code here`("[Munees]waran");--%>
                    alert("Reg : "+regex);
                }
Run Code Online (Sandbox Code Playgroud)

这段代码我错了什么?请指导我.

javascript regex

152
推荐指数
3
解决办法
33万
查看次数

如何检查字符串是否包含JavaScript中子串数组中的文本?

挺直的.在javascript中,我需要检查一个字符串是否包含数组中保存的任何子字符串.

javascript arrays string substring contains

121
推荐指数
8
解决办法
11万
查看次数

angularjs中的密码检查指令

我正在写一个密码验证指令:

 Directives.directive("passwordVerify",function(){
    return {
        require:"ngModel",
        link: function(scope,element,attrs,ctrl){
            ctrl.$parsers.unshift(function(viewValue){
                var origin = scope.$eval(attrs["passwordVerify"]);
                if(origin!==viewValue){
                    ctrl.$setValidity("passwordVerify",false);
                    return undefined;
                }else{
                    ctrl.$setValidity("passwordVerify",true);
                    return viewValue;
                }
            });

        }
    };
});
Run Code Online (Sandbox Code Playgroud)

HTML:

<input data-ng-model='user.password' type="password" name='password' placeholder='password' required>
<input data-ng-model='user.password_verify' type="password" name='confirm_password' placeholder='confirm password' required data-password-verify="user.password">
Run Code Online (Sandbox Code Playgroud)

给定表单中的2个密码字段,如果两个密码值相等,则受该指令影响的字段有效.问题是它以一种方式工作(即当我在密码验证字段中键入密码时).但是,更新原始密码字段时,密码验证不会生效.

知道如何进行"双向绑定验证"吗?

javascript angularjs

76
推荐指数
9
解决办法
11万
查看次数