@vaskon93

Как удалить ненужные символы?

Нужно удалить любой символ кроме цифры или буквы F, но только если F первый символ в строке. Для примера:

qwF12F3gh = 123
FqwF12F3gh = F123
  • Вопрос задан
  • 462 просмотра
Пригласить эксперта
Ответы на вопрос 2
1na1
@1na1
Hello, world!
Привет!

На мой взгляд щупать первую букву лучше средствами языка программирования, а не регулярками. Это выйдет наглядней и более производительно.

  1. Считать первый символ из строки
  2. Модифицировать строку — при помощи регулярки "s/\D//g" удалить из строки все, что не является числом
  3. Проверить каким был первый символ
  4. Если первый символ был "F" — возвращаем его в строку при помощи конкатенации
Пример на perl
#!/usr/bin/perl -w

$one = 'qwF12F3gh'; # Считываем примеры
$two = 'FqwF12F3gh'; # В переменные

for $example ($one, $two){ # Проходимся по обоим примерам в цикле
  $first = substr($example, 0, 1); # Считываем первый символ в переменную $first
  $example =~ s/\D//g; # Удаляем из строки все, что не является числом
		
  if($first eq 'F'){ # Если первый символ равен "F"
    $example = 'F' . $example; # Возвращаем его обратно в строку 
  }
}

print 'qwF12F3gh', ' -> ', $one;
print 'FqwF12F3gh', ' -> ', $two;

# Результат 
# qwF12F3gh -> 123
# FqwF12F3gh -> F123

Ответ написан
Комментировать
@vaskon93 Автор вопроса
на php надо
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы