草庐IT

javascript - 用 JavaScript 替换非数字字符?

我使用正则表达式/^\+(90)[2-5]{1}[0-9]{9}$/进行电话验证,但是当有人输入任何特殊字符(例如*-/()-_)在输入中,我想用空字符串替换字符(删除它们)。请注意,我不想替换+。我该怎么做? 最佳答案 这将删除给定字符串中的所有非数字字符:myString=myString.replace(/\D/g,"");\D匹配任何不是数字的东西;\d匹配一个数字。误读了问题。要删除除+之外的所有非数字字符,请执行以下操作:myString=myString.replace(/[^\d\+]/g,"");

javascript - 正则表达式用值替换所有逗号

我有一个看起来像这样的字符串:“Doe,John,A”(姓氏、名字、中间名首字母)。我正在尝试编写一个将字符串转换为“Doe*John*A”的正则表达式。但是,我必须考虑该字符串的所有空格,因此“Doe,John,A”仍会转换为“Doe*John*A”。此外,字符串“DoeJohnA”应转换为“Doe*John*A”。我开始写这篇文章,但我认为我被空格和用户不提供逗号的可能性所困。这是我所拥有的:varmyString="John,Doe,A";varmyOtherString="JohnDoeA";varmyFunction=function(aString){aString=aSt

javascript - 将每个新行的开头与 JavaScript 正则表达式匹配

我有一个可能包含\n的字符串。想想: Foo1 Foo2Foo3 Foo4.我想在每一行的开头替换 ,但是上面是一个字符串。^nbsp;只匹配Foo1之前的第一个 。我想在任何换行符的开头做,寻找 。有什么想法吗?所以,我想要一个正则表达式来匹配上面的前两个 ,但不匹配第三个。 最佳答案 您需要使用/m标志启用多行匹配模式,以便将每一行作为单独的行进行匹配。/^(?: )+/gm 关于javascript-将每个新行的开头与JavaScript正则

javascript - 正则表达式匹配字符串中多个单词的开头

在Javascript中,我希望能够匹配以特定短语开头的字符串。但是,我希望它能够匹配短语中任何单词的开头,而不仅仅是短语的开头。例如:短语:“这是最好的”需要匹配:“th”结果:匹配Th和th编辑:\b效果很好,但它提出了另一个问题:它还会匹配外来字符之后的字符。例如,如果我的字符串是“Männ”,我搜索“n”,它将匹配Mä之后的n...有什么想法吗? 最佳答案 "Thisisthebestmoth".match(/\bth/gi);或者为你的字符串设置一个变量varstring="Thisisthebestmoth";alert

Javascript 正则表达式匹配捕获返回整个匹配,而不是组

re=/\s{1,}(male)\.$/gi"Agirlisafemale,andaboyisamale.".match(re);这会导致“男性”。我要的是“男”我将男性放在括号中,我认为这只会包含那个群体。感谢帮助 最佳答案 我知道这个问题很老了但是这里的所有答案都是完全错误的。真正让我感到困扰的是,这些答案并没有给社区带来任何有用的东西。首先问题:为什么正则表达式的结果是"male."?re=/\s{1,}(male)\.$/gi"Agirlisafemale,andaboyisamale.".match(re);答案:因为,"

javascript - 如何向 SimpleMDE 添加自定义 Markdown 功能?

目前正在使用thisMarkdown所见即所得编辑器。我需要用一个函数(!!text!!来创建红色文本)扩展Markdown,并在服务器端成功地做到了这一点,但作为一个在JavaScript上苦苦挣扎的人,我很难做到这个图书馆也一样。 最佳答案 试试这个:varmyEditor=newSimpleMDE({toolbar:[{name:"redText",action:drawRedText,className:"fafa-bold",//Lookforasuitableicontitle:"Redtext(Ctrl/Cmd-Alt

javascript - 网址正则表达式验证

我做到了:/^(http[s]?://){0,1}(www.){0,1}[a-zA-Z0-9\.\-]+\.[a-zA-Z]{2,5}[\.]{0,1}并用验证器检查了它,但在我的页面上它不起作用:varre=/^(http[s]?://){0,1}(www.){0,1}[a-zA-Z0-9\.\-]+\.[a-zA-Z]{2,5}[\.]{0,1};if(!re.test(url)){alert("urlerror");returnfalse;}我收到这个错误WebpageerrordetailsUserAgent:Mozilla/4.0(compatible;MSIE8.0;Win

Javascript 正则表达式从 DOM ID 中删除非法字符

我在网页上动态创建了许多DOM元素。他们的ID是从外部列表生成的,有时这些名称可能包含ID的非法字符,如“@”或“&”。我需要删除不符合以下规则的字符:字符串必须以字母开头第一个字符后面可以跟任意数量的字母、数字([0-9])、连字符("-")、下划线("_")、冒号(":")和句点(".")所以,如果原始字符串是:99%ofPeoplearenotthe1%然后删除非法字符的结果字符串将是:ofPeoplearenotthe1谁能帮我用Javascript编写正则表达式,从字符串中删除不符合上述要求的字符? 最佳答案 varstr

Javascript 正则表达式只匹配一次不多或少

我有一个如下的字符串:single-hyphen我需要匹配连字符。但是,我只想匹配一次出现的连字符,不多也不少。所以上面的字符串将返回true,但下面的两个字符串将返回false:1.a-double-hyphen2.nohyphen如何定义正则表达式来执行此操作?提前致谢。 最佳答案 你可以这样做/^[^-]+-[^-]+$/^描述了字符串的开始$表示字符串结束[^-]+匹配1到除-之外的多个字符 关于Javascript正则表达式只匹配一次不多或少,我们在StackOverflow上

Javascript 正则表达式 - 仅当第一个字符不是星号时

我正在使用一个javascript验证器,它可以让我基于正则表达式构建自定义验证来自他们的网站:regexp=^[A-Za-z]{1,20}$允许最多20个字母字符。如果在输入字段中输入的数据超出此范围,这将返回错误。我需要的是在值的第一个字符为星号时触发输入字段错误的字符串。我可以让它触发相反的(如果第一个字符不是星号则错误):regexp=[\u002A]嘿嘿嘿嘿:-D 最佳答案 怎么样:^[^\*]匹配任何不以星号开头的输入;从示例正则表达式来看,任何与正则表达式不匹配的输入都会导致验证错误,因此使用双重否定你应该得到你想要的