2011-01-19 35 views
5

tôi có mã này để tìm kiếm trong một chuỗi và thay thế một số văn bản với văn bản khác:bỏ qua trường hợp nhạy cảm trong regex.replace?

Regex regexText = new Regex(textToReplace); 
retval = regexText.Replace(retval, Newtext); 

textToReplace có thể "chào đón" hoặc "khách hàng" hay bất cứ điều gì.

Tôi muốn bỏ qua trường hợp cho textToReplace để cả hai "chào mừng" và "Chào mừng" đều khớp.

Tôi làm cách nào để thực hiện việc này?

Trả lời

16

Bạn có thể thử:

Regex regexText = new Regex(textToReplace, RegexOptions.IgnoreCase); 
13

Bạn chỉ cần vượt qua tùy chọn RegexOptions.IgnoreCase như vậy:

Regex regexText = new Regex(textToReplace, RegexOptions.IgnoreCase); 
retval = regexText.Replace(retval, Newtext); 

Hoặc, nếu bạn thích, bạn có thể vượt qua các tùy chọn trực tiếp đến Replace method:

retval = Regex.Replace(retval, textToReplace, Newtext, RegexOptions.IgnoreCase); 

Một danh sách các tùy chọn có sẵn bạn có thể thiết lập cho regexes có sẵn tại RegexOptions documentation page.

+0

Xin lỗi, bạn là đầu tiên :) nên 1 để bài viết của bạn. –

1

Có một Regex.Replace overload với RegexOptions. Các tùy chọn này bao gồm giá trị IgnoreCase.

Các vấn đề liên quan