正式表达式验证印度电话号码和手机号码

时间:2013-08-21 07:40:43

标签: regex phone-number

我想验证印度的电话号码以及手机号码。电话号码和手机号码的格式如下:

对于土地行号

03595-259506
03592 245902
03598245785

手机号码

9775876662
0 9754845789
0-9778545896
+91 9456211568
91 9857842356
919578965389

我想在一个正则表达式中使用正则表达式。我尝试了以下正则表达式,但它无法正常工作。

{^\+?[0-9-]+$}

13 个答案:

答案 0 :(得分:14)

对于陆线号码

03595-259506
03592 245902
03598245785

你可以用这个

\ d {5}([ - ] *)\ d {6}

所有人都很新;)

OLD: ((\+*)(0*|(0 )*|(0-)*|(91 )*)(\d{12}+|\d{10}+))|\d{5}([- ]*)\d{6}
NEW: ((\+*)((0[ -]+)*|(91 )*)(\d{12}+|\d{10}+))|\d{5}([- ]*)\d{6}

9775876662
0 9754845789
0-9778545896
+91 9456211568
91 9857842356
919578965389

03595-259506
03592 245902
03598245785

这个网站对我很有用,而maby对你来说。;)http://gskinner.com/RegExr/

答案 1 :(得分:8)

这很好用:

\+?\d[\d -]{8,12}\d

匹配

03598245785
9775876662
0 9754845789
0-9778545896
+91 9456211568
91 9857842356
919578965389
987-98723-9898
+91 98780 98802
06421223054
9934-05-4851
WAQU9876567892
ABCD9876541212
98723-98765

不匹配:

2343
234-8700
1 234 765

答案 2 :(得分:5)

使用以下正则表达式

^(\+91[\-\s]?)?[0]?(91)?[789]\d{9}$

这将支持以下格式:

  1. 8880344456
  2. 918880344456
  3. +91 8880344456
  4. + 91-8880344456
  5. 08880344456
  6. 918880344456

答案 3 :(得分:5)

您可以使用正则表达式。

  

/ ^ [(] + \ ++ \ d {2} [)] + [^ 0] + \ d {9} /

答案 4 :(得分:2)

对于手机和手机固定号码:(?:\s+|) // leading spaces ((0|(?:(\+|)91)) // prefixed 0, 91 or +91 (?:\s|-)* // connecting space or dash (-) (?:(?:\d(?:\s|-)*\d{9})| // 1 digit STD code & number with connecting space or dash (?:\d{2}(?:\s|-)*\d{8})| // 2 digit STD code & number with connecting space or dash (?:\d{3}(?:\s|-)*\d{7})| // 3 digit STD code & number with connecting space or dash \d{10}) // plain 10 digit number (?:\s+|) // trailing spaces

阐释:

9775876662
0 9754845789
0-9778545896
+91 9456211568
91 9857842356
919578965389

0359-2595065
0352 2459025
03598245785
07912345678
01123456789
sdasdcsd
+919898101353
dasvsd0 
+91 dacsdvsad
davsdvasd

0112776654

tested关注文字

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/frame_main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context="com.RareMediaCompany.BDTrial.SlidingTab">

    <include
        android:id="@+id/toolbar1"
        layout="@layout/toolbar_job" />

    <com.RareMediaCompany.BDTrial.Utils.CustomTabLayout
        android:id="@+id/sliding_tabs"
        style="@style/CustomTabLayout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="#eeeeee"
        app:tabIndicatorColor="#f39220"
        app:tabIndicatorHeight="3dp"
        app:tabMaxWidth="0dp"
        app:tabMode="fixed"
        app:tabPaddingEnd="0dp"
        app:tabPaddingStart="0dp"
        app:tabTextAppearance="@android:style/TextAppearance.Widget.TabWidget"
        app:tabSelectedTextColor="#808080" />

    <LinearLayout
        android:id="@+id/linear1"
        android:background="@android:color/white"
        android:layout_width="match_parent"
        android:layout_height="70dp"
        android:orientation="horizontal"
        android:weightSum="1">

        <android.support.v7.widget.SearchView
        android:layout_width="300dp"
        android:layout_height="45dp"
        android:id="@+id/searchView"
        android:layout_weight="0.9"
        android:layout_marginRight="5dp"
        android:layout_gravity="center"
        style="@style/CitySearchView"
        android:background="@drawable/searchview"
        android:layout_marginLeft="10dp"/>

        <LinearLayout
            android:id="@+id/list_linearlayout"
            android:layout_width="45dp"
            android:layout_height="45dp"
            android:layout_weight="0"
            android:layout_gravity="center"
            android:background="#f39220">
            <ImageView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginTop="10dp"
                android:layout_weight="0.3"
                android:src="@drawable/list_icon_white"/>

        </LinearLayout>

        <LinearLayout
            android:layout_width="45dp"
            android:layout_height="45dp"
            android:layout_gravity="center"
            android:layout_weight="0"
            android:layout_marginRight="10dp"
            android:background="#75aadb">
            <ImageView
                android:layout_width="20dp"
                android:layout_height="wrap_content"
                android:layout_marginTop="10dp"
                android:layout_marginRight="2dp"
                android:layout_weight="0.3"
                android:src="@drawable/mapmarker"/>

        </LinearLayout>


    </LinearLayout>
        <!--android:layout_width="320dp"-->
        <!--android:layout_height="wrap_content"-->
        <!--android:layout_marginLeft="10dp"-->
        <!--android:layout_marginTop="10dp"-->
        <!--android:id="@+id/searchview"/>-->

    <android.support.v4.view.ViewPager
        android:id="@+id/view_pager"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:background="@android:color/white" />

</LinearLayout>

答案 5 :(得分:2)

我将以下内容用于我的一个python项目

正则表达式

(\+91)?(-)?\s*?(91)?\s*?(\d{3})-?\s*?(\d{3})-?\s*?(\d{4})

Python用法

re.search(re.compile(r'(\+91)?(-)?\s*?(91)?\s*?(\d{3})-?\s*?(\d{3})-?\s*?(\d{4})'), text_to_search).group()

说明

(\+91)? // optionally match '+91'
(91)?   // optionally match '91'
-?      // optionally match '-'
\s*?    // optionally match whitespace
(\d{3}) // compulsory match 3 digits
(\d{4}) // compulsory match 4 digits

经过测试并适用于

9992223333
+91 9992223333
91 9992223333
91999 222 3333
+91999 222 3333
+91 999-222-3333
+91 999 222 3333
91 999 222 3333
999 222 3333
+919992223333

答案 6 :(得分:0)

印度中的所有手机号码均以 9 8 7 6 。现在,您有可能不用担心前缀(+91或0)。如果您是这种情况,则可以从regextester.com网站获得帮助,也可以使用 r'^(+ 91 [-\ s]?)?[0]?(91)?[ 789] \ d {9} $'

如果要验证带前缀(+91或0)的电话号码,请使用: r'^ [9876] \ d {9} $'

答案 7 :(得分:0)

印度移动电话号码

用于验证11或12(以0或91开头)数字位数的正则表达式

String regx = "(0/91)?[7-9][0-9]{9}";

String mobileNumber = "09756432848";

check 

if(mobileNumber.matches(regx)){
   "VALID MOBILE NUMBER"
}else{
   "INVALID MOBILE NUMBER"
}

您可以通过从正则表达式(即regx)中删除"(0/91)?"来检查10位手机号码

答案 8 :(得分:0)

您可以实现以下正则表达式 regex ='^ [6-9] [0-9] {9} $'

答案 9 :(得分:0)

手机号码:

const re = /^[6-9]{1}[0-9]{9}$/;

答案 10 :(得分:-1)

你可以像这样使用正则表达式:

   ^[0-9\-\(\)\, ]+$

答案 11 :(得分:-1)

所有座机号码和手机号码

^ [\ d] {2,4} [ - ]?[\ d] {3} [ - ]?[\ d] {3,5} |([0])?(\ + \ d { 1,2} [ - ]?)?[789] {1} \ d {9} $

答案 12 :(得分:-2)

var phonereg = /^(\+\d{1,3}[- ]?)?\d{10}$/;