Android正規表現


携帯電話の番号を厳格に検証するには、今はどの数字の先頭の番号が開放されているかを確認してから、国内の番号は次のように割り当てられています。
移動:134、135、136、137、138、139、150、151、157(TD)、158、159、187、188
聯通:130、131、132、152、155、156、185、186
電気通信:133、153、180、189、(1349衛通)
携帯番号を確認:

public class ClassPathResource { 
  public static boolean isMobileNO(String mobiles) { 
    Pattern p = Pattern 
        .compile("^(([-])|([^,//D])|([,-]))//d{}$"); 
    Matcher m = p.matcher(mobiles); 
    System.out.println(m.matches() + "---"); 
    return m.matches(); 
  } 
  public static void main(String[] args) throws IOException { 
    System.out.println(ClassPathResource.isMobileNO("")); 
  } 
}
public class ClassPathResource {  
  public static boolean isMobileNO(String mobiles) {  
    Pattern p = Pattern  
        .compile("^(([-])|([^,//D])|([,-]))//d{}$");  
    Matcher m = p.matcher(mobiles);  
    System.out.println(m.matches() + "---");  
    return m.matches();  
  }  
  public static void main(String[] args) throws IOException {  
    System.out.println(ClassPathResource.isMobileNO(""));  
  }  
} 
認証メールボックス:

public static boolean isEmail(String strEmail) {  
  String strPattern = "^[a-zA-Z][\\w\\.-]*[a-zA-Z0-9]@[a-zA-Z0-9][\\w\\.-]*[a-zA-Z0-9]\\.[a-zA-Z][a-zA-Z\\.]*[a-zA-Z]$"; 
  Pattern p = Pattern.compile(strPattern); 
  Matcher m = p.matcher(strEmail); 
  return m.matches(); 
} 
public static boolean isEmail(String strEmail) {  
  String strPattern = "^[a-zA-Z][\\w\\.-]*[a-zA-Z0-9]@[a-zA-Z0-9][\\w\\.-]*[a-zA-Z0-9]\\.[a-zA-Z][a-zA-Z\\.]*[a-zA-Z]$";  
  Pattern p = Pattern.compile(strPattern);  
  Matcher m = p.matcher(strEmail);  
  return m.matches();  
}

EditTextに入力された規則が合っているかどうかを確認します。

import Android.app.Activity; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.Button;
import android.widget.EditText;  
public class Main extends Activity { 
  private EditText editText; 
  private Button button; 
  
  @Override 
  public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 
    editText = (EditText) findViewById(R.id.textId); 
    editText.setText("EditText element"); 
    button = (Button) findViewById(R.id.btnId); 
    button.setText("Check"); 
    button.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
        if (checkString(editText.getText().toString())) { 
          editText.setText("Corect"); 
        } 
      } 
    }); 
  } 
  
  private boolean checkString(String s) { 
    return s.matches("\\w*[.](Java|cpp|class)"); 
  } 
}
import Android.app.Activity;  
import android.os.Bundle;  
import android.view.View;  
import android.widget.Button;  
import android.widget.EditText;  
public class Main extends Activity {  
  private EditText editText;  
  private Button button;  
  
  @Override 
  public void onCreate(Bundle savedInstanceState) {  
    super.onCreate(savedInstanceState);  
    setContentView(R.layout.main);  
    editText = (EditText) findViewById(R.id.textId);  
    editText.setText("EditText element");  
    button = (Button) findViewById(R.id.btnId);  
    button.setText("Check");  
    button.setOnClickListener(new View.OnClickListener() {  
      @Override 
      public void onClick(View v) {  
        if (checkString(editText.getText().toString())) {  
          editText.setText("Corect");  
        }  
      }  
    });  
  }  
  
  private boolean checkString(String s) {  
    return s.matches("\\w*[.](Java|cpp|class)");  
  }  
} 
一般的な正規表現の収集
正規表現は文字列処理、フォーム検証などに用いられ、実用的で効率的です。いくつかの一般的な表現をここに集めて、必要な時に備えます。
中国語の文字にマッチする正規表現:[/u 4 e 00-\u 9 fa 5]
中国語に合わせるのは本当に頭が痛いです。この表現があれば簡単です。
ダブルバイトの文字にマッチします。(^\x 00-\xff)
注:文字列の長さを計算するために使用できます。(2バイトの文字長計2、ASCII文字計1)
空白行にマッチする正規表現:\s*\r
コメント:空白の行を削除するために使用できます。
HTMLタグにマッチした正規表現:<\\S*?)[^>*?*??*?/>
コメント:ネット上に流布されているバージョンは最悪です。これも一部しかマッチしていません。複雑な入れ子マークについてはまだ何もできません。
最初の空白文字にマッチする正規表現:\\s*\s*
コメント:行頭の行末の空白文字(スペース、タブ、タブの交換などを含む)を削除するために使用できます。非常に有用な表現です。
Emailアドレスにマッチする正規表現:\w+(-+)\w+*@\w+(-)\w+(*)*/\w+([-]]]\w+(*)*
コメント:フォーム検証はとても実用的です。
URLにマッチする正規表現:[a-zA-z]+:/[\]*
コメント:ネットで流布されているバージョンの機能はとても限られています。
アカウントにマッチするかどうかは合法的です。(アルファベットの先頭は5-16バイトが許可されています。アルファベットの数字をアンダースコアにしてもいいです。):^[a-zA-Z 0-9_]4,15}
コメント:フォーム検証はとても実用的です。
国内電話番号に合わせる:\d{3}-\d{8}{4}-\d{7}
コメント:マッチング形式は051-440522または021-878822のようです。
テンセントQQ号に一致します。[1-9][0-9]{4,}
コメント:テンセントQQ号は10000から始まります。
中国郵便番号にマッチしています。[1-9]\d{5}(?!?\!\d)
コメント:中国郵便番号は6桁の数字です。
マッチング身分証明書:\d{15}|\d{18}
中国の身分証は15位か18位です。
ipアドレスにマッチする:\d+\.\d+\.\d+\.\d+.\d+
コメント:ipアドレスを抽出する時に役に立ちます。
特定の数字にマッチする:
^[1-9]\d*/整合正の整数
^-[1-9]\d*/マッチング負の整数
^-1-9]\d*/整合整数
^[1-9]\d*124//マッチング非負の整数(正の整数+0)
^-[1-9]\d*124; 0//整合非正整数(負の整数+0)
^[1-9]\d*.\d*.\d*[1-9]\d*/マッチング正浮動小数点数
^-([1-9]\d*.\d*.\d*[1-9]\d*)//マッチング負の浮動小数点数
^-?([[1-9]\d*.\d**\0\.\d*[1-9]\d*\\n 0?0+|0)//マッチング浮動小数点数
^[1-9]\d*.\d*.\d*[1-9]\d*0?\.0+|0//マッチング非負浮動小数点(正浮動小数点+0)
^(-([1-9]\d*.\d*.\d*[1-9]\d*))は、1240?0+|0//マッチング非正浮動小数点(負浮動小数点+0)
注:大量のデータを処理する時に役に立ちます。具体的な応用に注意して修正してください。
特定の文字列にマッチする:
^[A-Za-z]+/マッチングは26文字のアルファベットからなる文字列です。
^[A-Z]+/マッチングは26文字の大文字で構成されている文字列です。
^[a-z]+//マッチングは26文字の小文字からなる文字列です。
^[A-Za-z 0-9]+/マッチングは、数字と26文字のアルファベットからなる文字列です。
^\w+//マッチングは、数字、26文字、またはアンダースコアからなる文字列です。
コメント:最も基本的に最もよく使われている表現です。
以上の内容は小编で皆さんと共有しているandroid正則表式大全です。