|
|
|
| Есть текст, следующего вида:
Mon Dec 24,11:50 PM,GMT,JPY,JPY BSI Large All Industry (QoQ) (4Q),Medium,,,6.2
Mon Dec 24,11:50 PM,GMT,JPY,JPY BSI Large Manufacturing (QoQ) (4Q),Medium,,,7.7
Tue Dec 25,5:00 AM,GMT,JPY,JPY Supermarket Sales (YoY) (NOV),Low,,,1.10%
Tue Dec 25,11:50 PM,GMT,JPY,JPY BoJ Monetary Policy Meeting Minutes for October 31,Low,,,
Tue Dec 25,11:50 PM,GMT,JPY,JPY BoJ Monetary Policy Meeting Minutes for November,Medium,,,
Wed Dec 26,3:50 AM,GMT,JPY,JPY BoJ Board Member Kamezaki to Speak at Economic Forum,Low,,,
Wed Dec 26,7:45 AM,GMT,EUR,EUR France Housing Permits 3M (YoY) % Change (NOV),Low,,,3.20%
Thu Dec 27,11:30 PM,GMT,JPY,JPY National CPI (YoY) (NOV),High,,0.5%,0.3%
Thu Dec 27,11:30 PM,GMT,JPY,JPY National CPI Ex Fresh Food (YoY) (NOV),High,,0.3%,0.1%
Thu Dec 27,11:30 PM,GMT,JPY,JPY National CPI Ex Food; Energy (YoY) (NOV),High,,-0.2%,-0.3%
|
К примеру в некоторых строках есть слова Medium, Low и High, нужно их заменить на русские: Среднее, Низкое и Важное - соответственно, как это можно сделать, и можно ли это вообще осуществить с помощью рег. выражений?
Т.е. строка должна остатся такой же, если в ней встречается одно из этих слов, его нужно поменять на русское и перезаписать. | |
|
|
|
|
|
|
|
для: Na100yashyi
(28.12.2007 в 23:00)
| | Это делается так
<?
$text = str_replace(array("Medium", "Low", "High"), array("Среднее", "Низкое", "Важное"), $text);
|
| |
|
|
|
|
|
|
|
для: Саня
(29.12.2007 в 00:35)
| | Спасибо, все работает, но только с английским языком, т.е. если написать:
str_replace(array("Medium", "Low", "High"), array("SREDNEE - Среднее", "NIZKOE - Низкое", "VAZHNOE - Важное")
|
то в файле отображается только:
... SREDNEE - ,,,7
... NIZKOE - ,,,1
... er 31,NIZKOE - ,,,
|
то есть русский шрифт не отображается, обьясните в чем проблема, может с настройками апача? | |
|
|
|
|
|
|
|
для: Na100yashyi
(31.12.2007 в 11:54)
| | Если на выходе html-страница , нужно что.бы русские слова были написаны в той-же кодировке что указана в заголовках страницы.
И по большому счёту регулярными выражениями получится точнее заменять , у вас например переведёт так.же часть слова hightlight , и регистр букв один .
Выражениями получится примерно так
<?
echo preg_replace(array('#\blow\b#i', '#\bmedium\b#i', '#\bhight\b#i'),array('низкое', 'среднее', 'высокое'), $txt);
|
если не принимать ко вниманию ещё то , что существительные которым могут предшествовать эти прилагательные могут быть во множественном числе :)
тогда сначала желательно заменять как например '#\blow\b(?=\s+[a-z]+s\b#' на 'низкие' в low sectors. И то останется ещё проблема какого рода могут быть эти существительные .
Если переводить просто любой текст , без переписывания вручную сделать если и возможно , то километры кода | |
|
|
|
|