如何用html模式检查首字母?

时间:2016-02-05 14:46:25

标签: html regex database

我正在建立一个可以插入客户的数据库。

通过每个姓氏的首字母,我想检查它是否按照正确的顺序排列。 我想要它:" T.L.R。"每个首字母之间都有点。

要检查这一点,我想使用一种模式。

我现在得到的是:

<input required="true" type="text" required pattern="[A-Za-z]{1}+\.[A-Za-z]{1}+\.[A-Za-z]{1}+\.">

此代码不做任何事情。 有谁知道答案?

提前Thanx!

3 个答案:

答案 0 :(得分:2)

您正在组合Line 20: There were 18 warnings(use warnings() to see them) ,意思是1,而{1}意味着1或更多。这不起作用。

试试这个:

+

由于默认情况下[A-Za-z]\.[A-Za-z]\.[A-Za-z]\. 已经恰好为1,因此您也可以删除[]

这意味着您的首字母缩写中只需要3个字符,因此{1}不会计算在内。

如果你想使用1个字符,然后是一个点,那么重复你可以使用它:

I.K.

另外,请勿忘记添加前缀([A-Za-z]\.)+ 后缀^以匹配整个字符串:

$

答案 1 :(得分:0)

正如一些人所说,应该将正则表达式模式重写为

[A-Za-z]{1}\.[A-Za-z]{1}\.[A-Za-z]{1}\.

使用表单标记时,所需的模式很有效。尝试:

<form action="customer">
  Country code: <input type="text" name="country_code" pattern="[A-Za-z]{1}\.[A-Za-z]{1}\.[A-Za-z]{1}\." title="A.B.C.">
  <input type="submit">
</form>

答案 2 :(得分:0)

如果你想要每个角色之间都有点数

,你的正则表达式应该是这样的
    if(sentence.contains("blue") && sentence.contains("green")) {
        System.out.println("sunny");
    } else if (sequence.contains("blue")) {
        System.out.println("ocean");
    } else if (sequence.contains("green")) {    
        System.out.println("garden");
    } else {
        System.out.println("dull");
    }