|
|
|
| Помогите ПОЖАЛУЙСТА написать регулярное выражение..
вот задача:
2) Необходимо написать регулярное
выражение + код (или псевдокод) для
извлечения нужных значений
Текст:
Karta *0123: Pokupka 1000 RUB data 21.08.2015 12:12:12 mesto
Starbucks
Значения:
- Номер карты
- Сумма транзакции
- Валюта транзакции
- Дата
- Место совершения транзакции | |
|
|
|
|
|
|
|
для: Galya
(24.05.2016 в 14:14)
| |
$subject = "Karta *0123: Pokupka 1000 RUB data 21.08.2015 12:12:12 mesto
Starbucks";
$pattern="#Karta \*([\d]+): Pokupka ([\d]+) RUB data ([\d\.]+ [\d\:]+) mesto(.*?)([\w]+)#s";
preg_match($pattern, $subject, $matches);
echo "<pre>";
print_r($matches);
echo "</pre>";
|
| |
|
|
|
|
|
|
|
для: Galya
(24.05.2016 в 14:14)
| | Такое выражение гораздо корректнее:
Karta\s+\*\d{4}\:\s+Pokupka\s+\d+\.?\d{0,2}\s+RUB\s+data\s+\d{2}\.\d{2}\.\d{4}\s+\d{2}\:\d{2}\:\d{2}\s+mesto
можно \s+ заменить на [ ]+ , \d на [0-9] и т.д.
и еще здесь учтена возможность копеек а не только целых рублей:)) | |
|
|
|