#if-statement #pascal
#оператор if #паскаль
Вопрос:
Мне нужно проверить строку, в данном случае называемую «word», чтобы увидеть, содержит ли она букву (или символ, если вы предпочитаете). На самом деле мне не нужно знать местоположение буквы, просто если она присутствует. В настоящее время у меня есть это:
if character in word then //both "word" and "character" are string variables.
begin
{some code}
end;
Проблема в том, что я просто отключаю функцию python:
if character in word: //In python I would use an array for "word"
//some code
И это, похоже, не работает в pascal.
Это может показаться глупым вопросом, но я очень новичок в pascal и, действительно, прошу помощи в stack exchange. Любая помощь относительно того, как проверять наличие символов в строках, была бы весьма признательна.
Комментарии:
1. Как насчет strpos или strscan ?
2. Они Майкла предназначены для pchar, а не для строк, и использовались во времена Turbo Pascal. В настоящее время они редко используются, поскольку обычные (объектные) строки pascal могут быть преобразованы в pchars для внешнего взаимодействия
Ответ №1:
if pos(character,word)>0 then
... some code
pos перегружен как для символов, так и для строк (для совпадений подстрок).
Обратите внимание, что поиск выполняется с учетом регистра. Прописные () как символ, так и слово, если вы хотите иначе.