Tôi cần phải thay thế một số phần của chuỗi bằng nhau bằng C#. Tôi chỉ có thể tìm thấy một câu hỏi tương tự về cách đạt được điều này here nhưng đó là PHP.Làm thế nào để thay thế hai hoặc nhiều chuỗi với nhau?
tình tôi liên quan đến một từ điển [string, string] nắm giữ cặp để thay thế như:
- chó, mèo
- mèo, chuột,
- chuột, chim
Và Tôi có một chuỗi có giá trị là:
"My dog ate a cat which once ate a mouse got eaten by a raptor"
Tôi cần một chức năng để có được điều này:
"My cat ate a mouse which once ate a raptor got eaten by a raptor"
Nếu tôi liệt kê các từ điển và gọi string.Replace theo lệnh, tôi có được điều này:
"My raptor ate a raptor which once ate a raptor got eaten by a raptor"
Đó là lạ nếu điều này đã không được hỏi trước , (Đó là kiến thức phổ biến?) Nhưng tôi không thể tìm thấy bất kỳ. Vì vậy, tôi xin lỗi nếu nó có và tôi bị mất nó.
Cách bẩn để làm điều đó là sử dụng một số văn bản trung gian. Vì vậy, chuyển đổi 'chó' thành '1', 'mèo' thành '2', và sau đó thực hiện lần truyền thứ hai, nơi bạn chuyển đổi '1' và '2' thành những gì bạn muốn. Hãy chắc chắn để sử dụng một cái gì đó độc đáo hơn so với '1' và '2' (có lẽ là một GUID). Như tôi đã nói, nó bẩn thỉu, và tôi chắc chắn có một cách tốt hơn. – xbonez
Bạn muốn (làm đầu ra) cho từ điển {"foo": "1", "bar": "2", "foobar": "3"} và nhập "foo bar foobarbar" như thế nào? – Dogbert
@Dogbert "1 2 32" –