JSとJavaの一般的な正規表現とさまざまな書き込み方法

学習の過程で正規表現に出くわし、必要なときに毎回インターネットをチェックするのは少し不便だと思いますので、他のブロガーを参考にした考えをまとめました。 (ありがとう)より一般的に使用される正規表現。(便宜上収集できます、ははは、私は気にしません)

検証日YYYY-MM-DD:

/^(\d{
    
    1,4})(-|\/)(\d{
    
    1,2})\2(\d{
    
    1,2})$/

Eメールを確認します:

/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/

確認書:

/^[A-Za-z]+$/

整数を確認します。

/^[-+]?\d*$/

非負の整数を確認します。

/^\d+$ / 或 /^[1-9]\d*|0$/

識別番号:

/^-?\d*\.?\d+$/

パスワードの強度を確認します(大文字と小文字の英語に加えて、数字と特殊記号)。

/^.*(?=.{
    
    6,})(?=.*\d)(?=.*[A-Z])(?=.*[a-z])(?=.*[!@#$%^&*? ]).*$/

中国語、英語、数字を確認しますが、アンダースコアなどの記号は含めません。

/^[\u4E00-\u9FA5A-Za-z0-9]+$/ 或 /^[\u4E00-\u9FA5A-Za-z0-9]{
    
    2,20}$/

英語と数字を確認します。

/^[A-Za-z0-9]+$/ 或 /^[A-Za-z0-9]{
    
    4,40}$/

小数を確認します。

/^[-\+]?\d+(\.\d+)?$/

IDを確認します。

 /^\d{
    
    6}(18|19|20)?\d{
    
    2}(0[1-9]|1[12])(0[1-9]|[12]\d|3[01])\d{
    
    3}(\d|X)$/

携帯電話番号を確認します。

/^1[3456789]\d{
    
    9}$/

中国語を確認する:

/^[\u0391-\uFFE5]+$/

中国語、英語、アンダースコアを含む数字を確認します。

/^[\u4E00-\u9FA5A-Za-z0-9_]+$/

正でない整数を確認します。

/^-[1-9]\d*|0$/ 或 /^((-\d+)|(0+))$/

いくつかの異なる環境で通常を使用する方法を説明しましょう

ここに画像の説明を挿入

JS正規表現のユースケース:

注:開始と終了を示すために斜めのバーを使用してください

	var str = document.getElementById("str").value.trim();//获取指定id的内容,去除空格
	var regex = /^[a-zA-Z]+$/; // 直接量正则表达式
	if(!regex.test(str)){
    
    
		alert("请输入正确的英文字母!");
	}

Java正規表現のユースケース:

注:Javaは斜めの開始と終了を必要としないため、「\」は2つヒットする必要があります。

Pattern p=Pattern.compile("\\d+");
Matcher m=p.matcher("22bb23");
m.matches();//返回false,因为bb不能被\d+匹配,导致整个字符串匹配未成功.
Matcher m2=p.matcher("2223");
m2.matches();//返回true,因为\d+匹配到了整个字符串

Pattern.matcher(CharSequence input)はMatcherオブジェクトを返します

Matcherクラスの構築メソッドはプライベートであり、自由に作成することはできません。このクラスのインスタンスは、Pattern.matcher(CharSequence input)メソッドを介してのみ取得できます。

Patternクラスは、いくつかの単純なマッチング操作しか実行できません。より強力で便利な通常のマッチング操作を取得するには、PatternとMatcherを連携させる必要があります。

Matcherクラスは、正規表現のグループ化サポートと正規表現の複数のマッチングサポートを提供します。

さて、これでほぼ終わりです。何か問題がある場合は、コメントセクションで指摘して、一緒に進歩してください。(•̀ω•́)✧

(ちなみに、MySQLで正規表現を使用するにはどうすればよいですか?キーワードREGEXPを追加するだけのようですよね?...)

おすすめ

転載: blog.csdn.net/qq_44386537/article/details/112107299