Я работаю над решением, потенциально имеющим жестко закодированные строки. Задача состоит в том, чтобы идентифицировать в коде решения (в моем случае C #) все фразы, которые не затрагиваются механизмом перевода.
Обычно механизмы перевода что-то вроде
myTranslator.Get("messageKey", myLang)
поэтому я предположил, что "\w .*"
потенциально даст мне фразы (я использую пробел после слова, потому что в ключах сообщений у вас редко бывают пробелы ...), но это также дало мне атрибуты HTML, такие как class="alpha beta gamma"
, которые не фразы ...
«к счастью», предполагаемые жестко закодированные строки находятся на французском , поэтому я попытался найти
".*[äÄëËüÜïÏöÖâÂêÊûÛîÎôÔèÈàÀùÚçÇéÉ].*"
в файлах *.cs;*.cshtml
(решение ASP.NET) ...
Это работает довольно хорошо, но находит только фразы с ударениями ... есть ли более умный способ идентифицировать жестко закодированные (не переведенные) строки в коде решения?
Каковы общие рекомендации для идентификации, маркировки и удаления строк такого типа из (локализуемого) решения?