PDA

View Full Version : regular expression



Don
06-12-2004, 00:23
Xin chào các bác!
Em có 1 cai chuỗi trong đó chứa các URL, em muốn lấy tất cả các URL trong chuỗi này ra, em dùng regular expression, nhưng bi error, em không biếtsửa làm sao! mong các bác giúp em!!!!


Regex digitregex = new Regex(@"http:////([\w-]\.)+[\w-](/[\w- ./?%=]*)?");
String s;
s = txtAddress.Text;
MatchCollection mc = digitregex.Matches(s);
if ( mc.Count > 0 )
{
foreach (Match m in mc)
{

this.lstAdress.Items.Add(m.Value);
}
}

aspnet
06-12-2004, 01:15
Vấn đề là lỗi nó nói sao chứ??

Don
06-12-2004, 08:42
mắc dù chuỗi mình nhập vào có chứa http://www.vnn.vn nhưng nó hông có match đuợc chuỗi này... :noexpress

Neo
06-12-2004, 10:09
Minh thu trong unix no nhu the nay:

expect1.6> set a "http://\[A-Za-z0-9.]+"
http://[A-Za-z0-9.]+
expect1.7> set b "http://www.vnn.vn"
http://www.vnn.vn
expect1.8> regexp $a $b match ; set match
http://www.vnn.vn
expect1.9> set c "http://www.cybersoft-vn.com"
http://www.cybersoft-vn.com
expect1.10> regexp $a $c match ; set match
http://www.cybersoft
expect1.11> set a "http://\[A-Za-z0-9.\\-]+"
http://[A-Za-z0-9.\-]+
expect1.12> regexp $a $c match ; set match
http://www.cybersoft-vn.com
expect1.13>

Ban thu lai trong Win2K thu xem
Thanks,

Don
06-12-2004, 11:32
Tôi đã thử regular expression cua Neo, nhưng vẫn không được!
Thanks!

Neo
06-12-2004, 14:35
Copy ichang ko đúng đâu, lý do:
1. Khi đưa vô code thì bỏ mấy cái dấu '\'
2. Coi ngôn ngữ lập trình hỗ trợ định dạng regular hay là dạng global.
3. Mình viết lại chỉ dựa vào ý tưởng thôi chứ ko thật sự chính xác, bạn tìm document để xem same same code trên môi trường .net

Chúc thành công