এই উদাহরণটি দেখায় যে কীভাবে এন্টার নম্বরটি ফোন নম্বর কিনা তা যাচাই করতে হয়, অ্যান্ড্রয়েডে রেজেক্স ব্যবহার করে৷
ধাপ 1 - অ্যান্ড্রয়েড স্টুডিওতে একটি নতুন প্রকল্প তৈরি করুন, ফাইল ⇒ নতুন প্রকল্পে যান এবং একটি নতুন প্রকল্প তৈরি করতে প্রয়োজনীয় সমস্ত বিবরণ পূরণ করুন৷
ধাপ 2 - নিম্নলিখিত কোডটি res/layout/activity_main.xml এ যোগ করুন।
<?xml version = "1.0" encoding = "utf-8"?> <LinearLayout xmlns:android = "https://schemas.android.com/apk/res/android" android:id = "@+id/parent" xmlns:tools = "https://schemas.android.com/tools" android:layout_width = "match_parent" android:layout_height = "match_parent" tools:context = ".MainActivity" android:gravity = "center" android:orientation = "vertical"> <EditText android:id = "@+id/enterNumber" android:layout_width = "match_parent" android:hint = "Enter phone number" android:layout_height = "wrap_content" /> <TextView android:id = "@+id/text" android:textSize = "18sp" android:textAlignment = "center" android:text = "click" android:layout_width = "match_parent" android:layout_height = "wrap_content" /> </LinearLayout>
উপরের কোডে আমরা Edit text এবং text view নিয়েছি। ব্যবহারকারী যখন টেক্সট ভিউতে ক্লিক করেন, তখন এটি এডিট টেক্সট থেকে ডেটা নেবে এবং ডেটা বৈধ করবে।
ধাপ 3 - নিম্নলিখিত কোডটি src/MainActivity.java
এ যোগ করুনpackage com.example.andy.myapplication; import android.os.Build; import android.os.Bundle; import android.support.annotation.RequiresApi; import android.support.v7.app.AppCompatActivity; import android.view.View; import android.widget.EditText; import android.widget.TextView; import android.widget.Toast; import java.util.regex.Matcher; import java.util.regex.Pattern; public class MainActivity extends AppCompatActivity { int view = R.layout.activity_main; TextView text; EditText enterNumber; String pattern = "^\\s*(?:\\+?(\\d{1,3}))?[-. (]*(\\d{3})[-. )]*(\\d{3})[-. ]*(\\d{4})(?: *x(\\d+))?\\s*$"; Matcher m; @RequiresApi(api = Build.VERSION_CODES.JELLY_BEAN) @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(view); text = findViewById(R.id.text); enterNumber = findViewById(R.id.enterNumber); text.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Pattern r = Pattern.compile(pattern); if (!enterNumber.getText().toString().isEmpty()) { m = r.matcher(enterNumber.getText().toString().trim()); } else { Toast.makeText(MainActivity.this, "Please enter mobile number ", Toast.LENGTH_LONG).show(); } if (m.find()) { Toast.makeText(MainActivity.this, "MATCH", Toast.LENGTH_LONG).show(); } else { Toast.makeText(MainActivity.this, "NO MATCH", Toast.LENGTH_LONG).show(); } } }); } }
উপরের কোডে, আমরা বৈধ টেক্সট ডেটা সম্পাদনা করতে regex এক্সপ্রেশন নিয়েছি। বৈধ পাঠ্য ডেটা সম্পাদনা করতে নিম্নলিখিত কোডটি ব্যবহার করুন।
String pattern = "^\\s*(?:\\+?(\\d{1,3}))?[-. (]*(\\d{3})[-. )]*(\\d{3})[-. ]*(\\d{4})(?: *x(\\d+))?\\s*$"; Matcher m; ..... Pattern r = Pattern.compile(pattern); if (!enterNumber.getText().toString().isEmpty()) { m = r.matcher(enterNumber.getText().toString().trim()); } else { Toast.makeText(MainActivity.this, "Please enter mobile number ", Toast.LENGTH_LONG).show(); } if (m.find()) { Toast.makeText(MainActivity.this, "MATCH", Toast.LENGTH_LONG).show(); } else { Toast.makeText(MainActivity.this, "NO MATCH", Toast.LENGTH_LONG).show(); } .........
আপনার অ্যাপ্লিকেশন চালানোর চেষ্টা করা যাক. আমি ধরে নিচ্ছি আপনি আপনার কম্পিউটারের সাথে আপনার আসল অ্যান্ড্রয়েড মোবাইল ডিভাইসটি সংযুক্ত করেছেন৷ অ্যান্ড্রয়েড স্টুডিও থেকে অ্যাপটি চালাতে, আপনার প্রোজেক্টের অ্যাক্টিভিটি ফাইলগুলির একটি খুলুন এবং টুলবার থেকে রান আইকনে ক্লিক করুন। একটি বিকল্প হিসাবে আপনার মোবাইল ডিভাইস নির্বাচন করুন এবং তারপর আপনার মোবাইল ডিভাইসটি পরীক্ষা করুন যা আপনার ডিফল্ট স্ক্রীন প্রদর্শন করবে -
উপরের কোডে আমরা সঠিক ফোন নম্বর ফরম্যাট দিয়েছি। এটি "ম্যাচ" হিসাবে সঠিক বৈধতা ফলাফল দেয়। এখন আমরা এডিট টেক্সটে অজানা ফরম্যাট দিচ্ছি। এটি নীচে দেখানো হিসাবে "মেলে না" হিসাবে ফলাফল যাচ্ছে -