View Full Version : درخواست Regex
Hadi-Hashemi
جمعه 09 آبان 1393, 13:41 عصر
سلام دوستان
درخواست Regex برای عبارت زیر:
int x1,x2,x3;
قبل و بعد از ',' میشه فاصله هم باشه.
بجای x1 و x2 و x3 میشه هر کلمه ای باشه.
مثلا:
int ali, x2, hadi;
pedram.11
جمعه 09 آبان 1393, 14:33 عصر
سلام:
int (.+),(.+),(.+);
Hadi-Hashemi
جمعه 09 آبان 1393, 14:55 عصر
سلام:
int (.+),(.+),(.+);
مرسی.
ولی باز یه مشکلی دارم اینکه x1 ها فقط باید از حروف و عدد باشن. مثلا این رو نباید قبول کنه:
int x1,ws66+ref,x3;
و یک سوال دیگه:
اگه تعداد x ها متغییر باشه چی؟
مثلا الان 3تا رو نوشتین شما و من 4 تا و یا 2 تا x داشته باشم قبول نمیکنه. میشه کاریش کرد؟؟
pedram.11
جمعه 09 آبان 1393, 15:01 عصر
برای حروف و عدد و تعداد نامحدود:
int ([a-zA-Z0-9],?\s?)+;
اسماعیل ابراهیمی
جمعه 09 آبان 1393, 15:49 عصر
اینم یه مدل دیگه :
using System;
using System.Text.RegularExpressions;
namespace ConsoleApplication8
{
class Program
{
static void Main(string[] args)
{
Regex rg = new Regex(@"int [a-z A-Z _]+[\w]*,[a-z A-Z _]+[\w]*,[a-z A-Z _]+[\w]*;");
string inputString=Console.ReadLine();
if (rg.IsMatch(inputString))
{
Console.WriteLine("String is OK ...");
}
else
{
Console.WriteLine("String is Wrong !");
}
Console.ReadLine();
}
}
}
Hadi-Hashemi
جمعه 09 آبان 1393, 21:06 عصر
اینم یه مدل دیگه :
using System;
using System.Text.RegularExpressions;
namespace ConsoleApplication8
{
class Program
{
static void Main(string[] args)
{
Regex rg = new Regex(@"int [a-z A-Z _]+[\w]*,[a-z A-Z _]+[\w]*,[a-z A-Z _]+[\w]*;");
string inputString=Console.ReadLine();
if (rg.IsMatch(inputString))
{
Console.WriteLine("String is OK ...");
}
else
{
Console.WriteLine("String is Wrong !");
}
Console.ReadLine();
}
}
}
جناب آقای ابراهیمی مرسی از جوابتون.
فقط تو این مورد اشتباه جواب میداد که با کمی تغییر درستش کردم
int a li , x2, hadi;"
یا این مورد:
int ali;
نتیجه نهایی:
"int ( *[a-zA-Z_][A-Za-z0-9_]* *)+(, *[a-zA-Z_][A-Za-z0-9_]* *)*( *;)$";
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.