我正在用javascript编写一个应用程序。在我的应用程序中,有一个搜索字符串/正则表达式的选项。问题是如果用户输入错误的值,match会返回javascript错误。示例代码:
function myFunction() {
var filter = $("#text_id").val();
var query = "select * from table";
var found;
if (query.match(filter) != -1) {
found = true;
}
我需要一个货币类型的正则表达式。所需经费:
1. First char can be a '$'. It can appear either 0 or 1 times.
2. Then a digit can appear multiple times.
3. Then a decimal point can appear either 0 or 1 time.
4. After this, a digit can appear 0 or more times.
我编写了以下正则表达式:
\$?\d+\.?\d*
我要在JS上测试这个。我就是这样在JS上测试这个的;
var
由于某些原因,js不能将我的字符串与regexp匹配。
href = "/admin/user/manage/621/edit";
var myRegexp = new RegExp("/user\/manage\/([0-9]+)/g");
var match = myRegexp.exec(href);
console.log(match)
尝试了不同的组合,结果仍然是空的。怎么啦?
我试图通过使用参数使我的正则表达式成为通用表达式。但是,当我使用变量时,RegExp无法工作:
下面的正则表达式在我将输入限制为7个字符时正常工作。
var specialCharactersValidation = new RegExp(/^[a-zA-Z0-9]{7}$/);
但当我把它变成通用的:
var characterCount = parseInt(attrs.limitCharacterCount); // Value is 7 and type is int
console.log(characterCount); // Value is 7
var specialChara
我正试图让我的regex在JavaScript中工作,但我有一个问题。
码
var reg = new RegExp('978\d{10}');
var isbn = '9788740013498';
var res = isbn.match(reg);
console.log(res);
然而,res总是控制台中的null。
这是相当有趣的,因为正则表达式应该工作。
我的问题是:那么,匹配字符串和正则表达式的正确语法是什么?
(如果这很重要,并且可能在环境中有任何发言权:这段代码是从我的app.get应用程序中的Express.js中生成的一个Node.js
我正尝试在javascript中使用常规表达式,但它不起作用。我的自定义控件包含名为regex的属性,该属性由用户提供,我需要根据此正则表达式验证输入值。由于JS中的属性将包含在双引号(“”)中,因此regualr表达式将失败(case -1)。情况2成功了,尽管两个情况的regualr表达式是相同的,唯一的区别是情况1,它是双引号。谁能告诉我为什么它不工作。RegexExp="/^\d{5}$/"-在我的aspx页面
var value = "11111";
if(value.toString().search($(element).attr(
测试字符串为"page-42440233_45778105“模式(页-\d+_d+)”
在线测试器()成功地找到了mathc,但在浏览器中js的结果为空。为什么?
var re = new RegExp("(page-\d+_\d+)", "gim");
var r_array = message.match(re);
console.log(r_array);
我正在编写一个工具,onkeydown将运行输入框中输入的当前值,以检查它是否与4种主要信用卡类型之一的regex匹配。
我觉得它有点工作,但它很奇怪,所以我想找出是什么原因导致了它的错误响应(例如,有时它会输出2个值而不是一个)。是因为我需要在循环之前设置一个标志变量吗?在匹配正确的卡片后,我从循环返回对象,所以我认为这就足够了.
这些规则的标准是从中提取的。
Visa :^4[0-9]{12}(?:[0-9]{3})?$所有维萨卡号以4开头,新卡有16位数。旧卡有13张。
MasterCard :^5[1-5][0-9]{14}$ All MasterCard数字以数字51到5
编译反应路由器失败。这是在安装路径到regexp之后发生的。
./node_modules/react-router/esm/react-router.js
Attempted import error: 'path-to-regexp' does not contain a default export (imported as 'pathToRegexp').
此错误发生在构建期间,不能取消。
最近,我在上发布了关于在JS中通过正则表达式进行时间格式转换的文章。
现在我稍微修改了一下代码。
function getHours(value) {
if (value == 0)
return 0;
var re = new RegExp("^(?=\d)((\d+)(h|:))?\s*((\d+)m?)?$", "g");
var myArray = re.exec(value);
var hours = 0;
var minutes = 0;
if (myArray != null) {
if (myArray[2
我有一个用来验证数字输入字段的脚本
if (fieldElement.getAttribute('type') == 'number') {
var numberRegExp = /^\d{4}$/;
var numberValidated = numberRegExp.test(fieldElement.value.trim());
if (!numberValidated) {
validated = false;
if (!fieldElement.hasClas
我的项目布局是:
-bin\
-out.closeure.js // (compiled from out.js using the closure compiler)
-out.js // this is the requirejs output file, no minification done)
-src\
-lib\
-library.js
-main.js
-somefile.js
现在,当我使用RequireJS将我的项目合并到一个文件中时,有没有一种方法可以修改模块的名称?例如,在main.js中而不是:
require(