为什么这个JavaScript正则表达式不起作用?

| 出于某种原因,这不起作用,但是我所有的搜索都说它应该起作用。 我在尝试将值增加1的元素上有一个id。 所以说我有
<input id=\"someText1\">
我想将1更改为2,所以我最终得到
<input id=\"someText2\">
我尝试使用来仅匹配文本
text = $(\"input\").attr(\"id\").match(/^[a-zA-Z]+$/);
但是当我输出text的值时,我得到null 请帮忙!     
已邀请:
删除
$
符号(文本确实以数字结尾,并且您告诉它以字母结尾)     
您的正则表达式应为
text = $(\"input\").attr(\"id\").match(/^[a-zA-Z0-9]+$/);
你在追吗
var text = $(\"input\").attr(\"id\").replace(/[0-9]+$/, \"\");
var num = $(\"input\").attr(\"id\").replace(/^[a-zA-Z]+/, \"\");
    
match
选择器必须完全等于ID,并且您的正则表达式匹配仅包含a-z和A-Z的任何字符串,因此它不匹配
someText1
!你应该试试
^[a-zA-Z]+[0-9]$
    
我建议使用类名选择器,例如ѭ9,因为它比在页面上获取所有输入元素然后按id过滤(尤其是在现代浏览器中)更快。     

要回复问题请先登录注册