正则表达式 - 仅第一个字符检查非字母字符

A. *_*lar 6 html javascript regex

我开始专门研究javascript和regexp.我正在努力提高自己生成正则表达式.

我想要做的是 - 我的html文件中有一个名字字段(以c的形式)

...
    <label for="txtName">Your Name*: </label>
    <input id="txtName" type="text" name="txtName" size="30" maxlength="40">
...
Run Code Online (Sandbox Code Playgroud)

在我的js文件中,我试图检查名称不能以任何非字母字符开头,仅适用于第一个字符.并且整个领域的包含除了破折号和空间之外的任何特殊字符.

他们不能以任何非字母字符开头;

/^[A-Z a-z][A-Z a-z 0-9]*$/
Run Code Online (Sandbox Code Playgroud)

除了破折号和空格外,它们不能包含任何符号;

/^*[[&-._].*]{1,}$/
Run Code Online (Sandbox Code Playgroud)

当我测试它是否有效时,它根本不起作用.我失败了哪一部分?

Tre*_*ama 10

尝试/^[A-Za-z][A-Za-z0-9 -]*$/
在字符列表([])中包含空格时,将允许在正在搜索的字符串中.

^[A-Za-z]匹配第一个字符并说它必须是某种字母.
[A-Za-z0-9 -]*$将匹配第一个字符后面的任何剩余字符(如果它们存在),并确保它是字母数字,或包含空格或短划线.