Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex 如何测试输入值是否包含字符串_Regex_Html - Fatal编程技术网

Regex 如何测试输入值是否包含字符串

Regex 如何测试输入值是否包含字符串,regex,html,Regex,Html,在我的HTML5页面中,我想强制用户在其登录的末尾添加“.app”字符串。 你知道我怎么做吗 我当前的代码: <input type="text" name="user_login" placeholder="firstname.app" required style="width:92%;" pattern="/.app/"> HTML5: <input type="text" name="user_login" placeholder="firstname.app" re

在我的HTML5页面中,我想强制用户在其登录的末尾添加“.app”字符串。 你知道我怎么做吗

我当前的代码:

<input type="text" name="user_login" placeholder="firstname.app" required style="width:92%;" pattern="/.app/">
HTML5:

<input type="text" name="user_login"
placeholder="firstname.app" required style="width:92%;"
pattern=".*\.app">

试试这个:

if($('input[name="user_login"]').val().indexOf(".app") >= 0){
  //code
}
或模式:

<input type="text" name="user_login" placeholder="firstname.app" required style="width:92%;" pattern="\w*.app">


您可以通过指定特定的模式来实现:

<input type="text" 
name="user_login" 
placeholder="firstname.app" 
required style="width:92%;" 
pattern="[A-Za-z-0-9]+\.app">

正则表达式在JavaScript和HTML属性中有一些不同之处:

  • 与js正则表达式文本相反,您不必将正则表达式置于
    /
    之间
  • 开始和结束是隐式的,因此在这里您应该添加
    *
    ,以匹配开始
你也忘了逃过圆点

总而言之,您可能希望:

<input type="text" name="user_login"
placeholder="firstname.app" required style="width:92%;"
pattern=".*\.app">


是否仅使用HTML?它很容易被黑客攻击。…@Mr.Alien最常见的情况是,用户可以立即发出警告,即使它不会取代服务器端验证。是的,我知道,但在提交(php)后会进行第二次测试。@dystroy是的,但有些人倾向于使用HTML5而不是JavaScript进行验证,认为旧浏览器会管理得很好,所以我想我应该警告:)提出替代建议并不是一件坏事,我想:)
<input type="text" name="user_login"
placeholder="firstname.app" required style="width:92%;"
pattern=".*\.app">