Как найти в тексте одну русскую букву

Как в русском тексте в Excel или Word быстро найти английскую букву? А наборот, русскую в английском?

Чтобы в русском или, правильнее будет сказать, в кириллическом тексте в Excel или Word быстро найти английскую букву, измените шрифт на Algerian и латинские символы будут выделены жирным :

Соответственно, для противоположной задачи, то есть для поиска русских символов, точно также меняем шрифт и русские буквы в тексте останутся нежирными:

Задачу поиска в выделенном диапазоне ячеек кириллических символов также решает такой небольшой макрос для Microsoft Excel:

Как отличить русский символ от английского, если они выглядят одинаково?

Допустим такие символы, как «о» и «x» есть и в русской клавиатуре, и в английской, и с виду они не отличаются.

Как определить какой символ написан?

Если особо не усложнять, есть возможность использовать перевод в Alt-код. Например для Word’a выполняем такие действия: выделяем нужный нам символ, после чего нажимаем Alt+X; получаем набор цифр (повторное нажатие сочетания Alt+X для выделенных цифр возвращает символ обратно) Пример сравнения:

х (русский) — 0445

x (английский) — 0078

о (русский) — 043E

o (английский) — 006F

Вот и получаем возможность узнать где и какая. А если использовать как проверку для большого количества букв в тексте, то можно подобрать шрифт, который по разному отображает русский или английский символ. Как пример «Wide Latin» (символы слева напечатаны русской раскладкой):

Проверка наличия символов из другой раскладки

Kora-antica

Патологоанатом приготовился рассекать грудную полость. Нужно было остановить его немедленно, подать признаки жизни. И Аркадий открыл глаза.

В таежном поселке Гарь больница была оборудована сравнительно неплохо. Были даже рентген-кабинет и лаборатория.
В морг этой больницы доставили труп, который привез участковый полицейский из заброшенной сторожки, куда случайно зашли геологи.

Конкурс невероятных и феноменальных историй открыт!

Напишите самый абсурдный рассказ, чтобы выиграть приз более 50 000 рублей!

Прием работ — до 5 июня 2022 года включительно.

Авторы всех пожеланий в чате получат специальную марку «Меценат конкурса»

lucky_bee

DanilaKalashnikov5

Всем удачи. Работ много, интересно прочитать. PS Аdvego Спасибо! . Всем удачи. Работ много, интересно прочитать.

PS Аdvego Спасибо! / 100 руб.

prepod100500

rin8351

AleksejDmitriev97

Anastasia112

Kyzmakor

livv

Ekaterina916

MihailShevchenko

Наш бесплатный сервис позволит легко проверить ваш текст на наличие символов из другой раскладки. Удобная форма проверки русских букв в английском тексте, не только покажет такие символы, но и автоматически заменит их на правильные. Найдем в вашем тексте: — английские буквы в русской раскладке; — латиницу в русском тексте; — подстановку латинских букв в русские слова. Для получения результата достаточно скопировать исходный текст в поле формы и выбрать в нужный язык.

  • Найти латиницу в Excel – функция
  • Найти кириллицу в Excel – функция
  • Как найти прописные буквы
    • Функция поиска прописных символов латиницы
    • Функция поиска прописных кириллических символов
    • Функция поиска любых прописных символов
  • Функции “Найти латиницу” и “Найти кириллицу” с помощью UDF
  • Найти латинские буквы в 2 клика
  • Найти слова, содержащие и кириллицу, и латиницу
    • С помощью регулярных выражений
    • В две итерации
  • Кейсы дальнейшего взаимодействия с данными
    • Удалить
    • Извлечь
    • Изменить регистр
    • Заменить символы

Важно: поскольку термин “найти” часто в сознании людей предполагает “найти и извлечь”, сразу оговоримся, что ниже именно булевая интерпретация поиска, иначе говоря, результата два – нашёл или не нашёл. Похожая, но все же другая задача – извлечь символы латиницы.

Текст, содержащий латиницу помимо кириллицы — довольно частое явление, и выявить, в какой раскладке текст, не всегда возможно визуально. Начертание многих символов в обеих раскладках идентично.

Когда нужно просто глазами обнаружить латиницу среди кириллических символов или наоборот, кириллицу в английском тексте, есть очень простое решение – использование неклассических шрифтов в Excel.

Например, Dubai Light сделает латиницу тоньше, Dubai Medium – жирнее кириллицы, Microsoft Himalaya – ниже, а Ink Free – выделит ее курсивом.

Но когда исходных данных много, важно не просто видеть, но и иметь возможность отфильтровать или отсортировать такие ячейки. Вариантов упростить и ускорить решение задачи несколько.

Задача поиска букв латинского алфавита в тексте – одна из нетривиальных в Excel, как и поиска любой длинной последовательности единичных символов. Как и в случае с поиском цифр, при обычном поиске придется перебирать все латинские буквы – а их 26, что ещё больше, чем цифр.

формула для поиска латиницы в Excel
Обнаружить латиницу – желаемый результат

Составная формула массива пригодится в случаях, когда не хочется или нет возможности пользоваться макросами или пользовательскими функциями (UDF):

=СЧЁТ(ПОИСК({"a":"b":"c":"d":"e":"f":"g":"h":"i":"j":"k":"l":"m":"n":"o":"p":"q":"r":"s":"t":"u":"v":"w":"x":"y":"z"};A1))>0

Здесь A1 — ячейка, которую мы хотим “проверить” на наличие в ней латиницы. Функция возвращает “ИСТИНА” или “ЛОЖЬ”. Важно отметить, что функция “ПОИСК” не является регистрозависимой, поэтому позволяет найти буквы в любом регистре.

Можно ли диапазон букв выразить иным способом? Да, формулой массива, а помогут в этом функция СИМВОЛ и функция СТРОКА:

{=СЧЁТ(ПОИСК(СИМВОЛ(СТРОКА(65:90));A1))>0}

Отличие этой формулы массива от предыдущей – её нужно вводить без фигурных скобок, они появятся при вводе формулы сочетанием Ctrl + Shift + Enter (вместо обычного Enter). В формуле выше, где явно прописаны все буквы, фигурные скобки вводятся вручную — это явное указание строкового массива.

Найти кириллицу в Excel – функция

Как вы, наверное, догадались, найти кириллицу в тексте можно аналогичным путем:

=СЧЁТ(ПОИСК({"а":"б":"в":"г":"д":"е":"ё":"ж":"з":"и":"й":"к":"л":"м":"н":"о":"п":"р":"с":"т":"у":"ф":"х":"ц":"ч":"ш":"щ":"ъ":"ы":"ь":"э":"ю":"я"};A1))>0

Или формулой массива с функцией СИМВОЛ:

{=СЧЁТ(ПОИСК(СИМВОЛ(СТРОКА(192:223));A1))>0}

Формула массива будет работать корректно, если языком системы для non-Unicode программ выбран русский.

Есть небольшая разница в двух этих формулах – вторая в отличие от первой использует 32 буквы, т.к. буква Ё не входит в диапазон символов.

Как найти прописные буквы

В отличие от “ПОИСК”, “НАЙТИ” – функция регистрозависимая, что позволяет найти буквы в том регистре, в котором они перечислены.

Функция поиска прописных символов латиницы

=СЧЁТ(НАЙТИ({"A":"B":"C":"D":"E":"F":"G":"H":"I":"J":"K":"L":"M":"N":"O":"P":"Q":"R":"S":"T":"U":"V":"W":"X":"Y":"Z"};A1))>0

Функция поиска прописных кириллических символов

=СЧЁТ(НАЙТИ({"А":"Б":"В":"Г":"Д":"Е":"Ё":"Ж":"З":"И":"Й":"К":"Л":"М":"Н":"О":"П":"Р":"С":"Т":"У":"Ф":"Х":"Ц":"Ч":"Ш":"Щ":"Ъ":"Ы":"Ь":"Э":"Ю":"Я"};A1))>0

Функция поиска любых прописных символов

Поможет вам найти в ячейке символы и кириллицы, и латиницы, если они написаны заглавными буквами.

=СЧЁТ(НАЙТИ({"А":"Б":"В":"Г":"Д":"Е":"Ё":"Ж":"З":"И":"Й":"К":"Л":"М":"Н":"О":"П":"Р":"С":"Т":"У":"Ф":"Х":"Ц":"Ч":"Ш":"Щ":"Ъ":"Ы":"Ь":"Э":"Ю":"Я":"A":"B":"C":"D":"E":"F":"G":"H":"I":"J":"K":"L":"M":"N":"O":"P":"Q":"R":"S":"T":"U":"V":"W":"X":"Y":"Z"};A1))>0

Для поиска цифр в ячейке можно использовать такой же синтаксис.

Функции “Найти латиницу” и “Найти кириллицу” с помощью UDF

UDF (User-defined function, пользовательская функция) – тем, кто часто использует функции такого плана, помогут упростить синтаксис на листе, т.к. содержат калькуляции в коде.

Function найтиЛатиницу(txt As String) As Boolean 
найтиЛатиницу = txt Like "*[A-z]*" 
End Function
Function найтиКириллицу(txt As String) As Boolean 
найтиКириллицу= txt Like "*[А-яЁё]*" 
End Function

Найти латинские буквы в 2 клика

Максимально быстрый способ проверки на наличие латиницы в Excel доступен пользователям !SEMTools.
Порядок действий: скопировать диапазон, выделить скопированное и вызвать макрос в меню «Найти символы» группы «ОБНАРУЖИТЬ».

Найти латиницу в ячейках Excel без использования формул, с помощью надстройки !SEMTools

Найти слова, содержащие и кириллицу, и латиницу

Иногда простой поиск в ячейке латиницы и кириллицы не решает проблему, т.к. в ячейке изначально подразумевается наличие обоих видов символов. Например, “автомобиль Tоyоta”, “холодильник Siеmеns”. В двух этих примерах специально вставлены буквы из другого алфавита: Tоyоta содержит кириллическую “о”, а Siеmеns – кириллическую “e”. Начертание этих символов идентичное, но вот для роботов это совершенно разные символы.

Как с помощью Excel проверить отличие в написании букв на латинице или кириллице в отдельных словах? Формулы выше не отличат фразы, написанные корректно, от фраз, написанных некорректно, так как отдадут “ИСТИНА” всем фразам при проверке на кириллицу и латиницу.

Решить проблему можно, если искать по конкретным словам! В !SEMTools есть два решения этой задачи:

С помощью регулярных выражений

Процедура находится в меню “ОБНАРУЖИТЬ” – “Слова” – “По паттерну”. Паттерн REGEX позволяет решить задачу в один заход, т.к. в нем есть оператор “ИЛИ”.
Данное выражение означает, что нужно найти слова, в которых или после кириллического символа идет символ латиницы, или наоборот. При этом между символами могут быть внутри слова любые другие символы (цифры, дефисы и любые другие, кроме пробела).

([a-zA-Z].*[а-яА-ЯёЁ]|[а-яА-ЯёЁ].*[a-zA-Z])

Важно понимать, что сам паттерн применим к любой строке вне зависимости от количества слов в ней, но в рамках указанной процедуры !SEMTools применяется к отдельным словам.

Применяем регулярное выражение из этой статьи для поиска слов, содержащих кириллицу и латиницу

В две итерации

Данный метод совершенно логичен, но требует чуть больше времени. Нужно просто сначала извлечь слова, содержащие латиницу, а потом, уже среди извлеченных этим способом, искать слова, содержащие кириллицу.

Кейсы дальнейшего взаимодействия с данными

Найти слова, содержащие кириллицу, латиницу или оба вида символов одновременно, – только полдела. За этапом их обнаружения зачастую следуют дальнейшие действия.

Удалить

Иногда нужно целиком удалить слова, содержащие латиницу. Дело в том, что в них могут находиться другие символы – цифры, кириллица, дефисы и другие знаки. Они останутся, если удалить из текста латиницу и ничего больше.

Извлечь

Можно захотеть извлечь латиницу. В !SEMTools это можно делать с помощью регулярных выражений, в том числе извлечь слова, содержащие латиницу, чтобы посчитать количество слов и посмотреть на их структуру. Из каталога товаров, например, быстро извлекать бренды, написанные на английском языке.

Изменить регистр

Бывают ситуации, когда слова, содержащие латиницу, имеет смысл сделать с заглавной буквы — это касается все тех же иностранных брендов.

Заменить символы

И, наконец, бывают ситуации, когда нужно заменить кириллицу на латиницу – но и здесь возможны вариации: можно транслитерировать, сменить раскладку или заменить символы на похожие с ними на другом языке. Подробнее про последний кейс: заменить русские буквы на английские и наоборот.

Про каждый из этих кейсов можно почитать с соответствующем разделе сайта, в надстройке присутствуют макросы для быстрой обработки подобных ситуаций.

Часто сталкиваетесь с этой или похожими задачами при работе в Excel?
!SEMTools поможет решить их быстро и легко!

Ниже вставьте или введите текст:

Искомое слово встречается в тексте -x

Где в тексте находится искомое слово?

Вам нужно найти в тексте любого типа определенный символ, букву, число, слово или целое предложение? В таком случае вам точно подойдет наш бесплатный онлайн поисковик слов, в который достаточно просто ввести или скопировать текст, затем задать искомое слово или символ, которые он в тексте найдет и выделит цветом.

По сравнению с поиском слов в текстовом документе Word, Open Office или непосредственно на веб-сайте наш поисковик более понятен, и, кроме того, он позволяет сразу же редактировать слова и символы.

Если найденных букв или слов будет больше одного, их количество будет отображено на экране. Это весьма удобно во многих ситуациях. Например, вы пишете статью, которая фокусируется на определенных словах. Однако таких слов в ней не должно быть ни много, ни мало. Именно наша поисковая система проверит весь ваш текст и поможет определить количество слов и их расположение.

Поиск слова происходит в режиме реального времени, поэтому при вводе его по буквам данные буквы в проверяемом тексте отмечаются, и отображается их

количество. Это удобно в ситуациях, когда вы ищете определенное слово, которое может иметь разные окончания. В таком случае достаточно написать только часть слова и при необходимости добавлять или удалять символы.

Как найти слово в тексте?

  • Сначала введите или вставьте текст, в котором вы хотите осуществить поиск.
  • Чтобы скопировать текст из любого места, выделите его и используйте сочетание клавиш Ctrl + C.
  • Чтобы вставить текст, переместите курсор мыши в выделенное поле и используйте сочетание клавиш Ctrl + V.
  • В выделенное поле введите буквы, цифры, символы или слова, которые вы хотите найти.
  • Вы можете редактировать, удалять, переписывать и копировать исходный текст.

Как в русском тексте в Excel или Word быстро найти английскую букву? И наборот

Чтобы в русском или, правильнее будет сказать, в кириллическом тексте в Excel или Word быстро найти английскую букву,
измените шрифт на Algerianи латинские символы будут выделены жирным:

Соответственно, для противоположной задачи, то есть для поиска русских символов, точно также меняем шрифт
и русские буквы в тексте останутся нежирными:

Задачу поиска в выделенном диапазоне ячеек кириллических символов также решает такой небольшой макрос для Microsoft Excel:

Результат работы макроса:

О том, как создать и использовать макросы, читайте здесь.

Яндекс.Метрика

Вот такое выражения не работает:

instr(`trans`, '[а-я]')

Как я понимаю [а-я] вот эта часть не верно оформлена.

Kromster's user avatar

Kromster

13.5k12 золотых знаков43 серебряных знака72 бронзовых знака

задан 5 янв 2017 в 16:52

blakcat's user avatar

5

Нужно создать свою функцию и использовать. Один раз выполните запрос:

DROP FUNCTION IF EXISTS PatIndex;
DELIMITER $$
CREATE FUNCTION PatIndex(pattern VARCHAR(255), tblString VARCHAR(255)) RETURNS INTEGER
    DETERMINISTIC
BEGIN
    DECLARE i INTEGER;
    SET i = 1;
    myloop: WHILE (i <= LENGTH(tblString)) DO
        IF SUBSTRING(tblString, i, 1) REGEXP pattern THEN
            RETURN(i);
            LEAVE myloop;        
        END IF;    
        SET i = i + 1;
    END WHILE; 
    RETURN(0);
END

Использование:

SELECT fld, PatIndex('[а-я]', fld) As rusIndex
FROM myTable

ответ дан 5 янв 2017 в 18:56

Kodirbek Makharov's user avatar

Понравилась статья? Поделить с друзьями:
  • E122 continuation line missing indentation or outdented как исправить
  • Как составить фосфат натрия
  • Как составить официальную претензию образец
  • Как найти общий ток в цепи формула
  • Как найти сложную номинальную процентную ставку