Viết hàm để chuyển đổi văn bản CamelCase thành sn_case: FunctionForHTMLManipulationtrở thànhfunction_for_html_manipulation
Văn bản đầu vào sẽ là một định danh phù hợp duy nhất trong nhiều ngôn ngữ. Nó phải bắt đầu bằng một chữ cái tiếng Anh, sau đó được theo sau bởi bất kỳ số lượng chữ cái hoặc chữ số tiếng Anh. Không cho phép các ký tự khác (dấu cách, ký hiệu, v.v.).
Mỗi "từ" trong văn bản CamelCase sẽ bắt đầu bằng chữ in hoa trừ khi ở đầu văn bản hoặc ngay sau một chữ số và được theo sau bằng 0 hoặc nhiều chữ cái, tất cả đều giống nhau. Các nhóm chữ số sẽ được coi là các từ riêng biệt nhưng chuyển qua không thay đổi.
Nói cách khác, một chữ cái viết thường theo sau là một chữ cái viết hoa cho biết một từ ngắt. Bất kỳ chữ cái và chữ số cạnh nhau cho thấy một từ nghỉ. Một chữ cái viết hoa theo sau là một chữ cái viết hoa khác và một chữ cái viết thường cho biết một từ ngắt.
...lU...=> ...l_u...
...l9...=> ...l_9...
...U9...=> ...u_9...
...9l...=> ...9_l...
...9U...=> ...9_u...
...UUl...=>...u_ul...
Cả hai Buy24Beersvà buy24beerstrở thành buy_24_beers.
MacDonaldAndObriantrở thành mac_donald_and_obrian.
MACDonaldAndOBriantrở thành mac_donald_and_o_brian.
...UUl...=> ...u_ul....
...chỉ ra nó ở giữa một chuỗi.
MACDonaldAndOBriantrở thànhmac_donald_and_o_brian" - tại sao?