соотношение букв ru / eng в переменной

Discussion in 'PHP' started by ufaclub, 7 Nov 2012.

  1. ufaclub

    ufaclub New Member

    Joined:
    13 Jul 2010
    Messages:
    204
    Likes Received:
    0
    Reputations:
    0
    есть переменная

    $_POST['zapros']

    как сделать условие что если в переменой больше 50%

    латинских букв по отношению к русским то

    выполнить условие

    if (....($_POST['zapros']) ....) die("больше 50% eng");
     
  2. VY_CMa

    VY_CMa Green member

    Joined:
    6 Jan 2012
    Messages:
    917
    Likes Received:
    492
    Reputations:
    724
    Посчитать количество того и того используя преобразование в коды символов.
     
    _________________________
  3. ufaclub

    ufaclub New Member

    Joined:
    13 Jul 2010
    Messages:
    204
    Likes Received:
    0
    Reputations:
    0

    ну логически то я знаю как сделать, мне иммено нужна помощь с написанием.
     
  4. phenix1025

    phenix1025 New Member

    Joined:
    20 Oct 2012
    Messages:
    11
    Likes Received:
    1
    Reputations:
    0
    Code:
    <?
    $str = file_get_contents('http://ya.ru');
    $eng = preg_match_all('|[A-z]{1,}|sUS',$str,$out);
    $ru = preg_match_all('|[А-я]{1,}|sUS',$str,$out);
    print "eng: $eng; ru: $ru;\n";
    ?>
    
    Думаю со сравнением 2 чисел разберетесь :)
     
  5. ufaclub

    ufaclub New Member

    Joined:
    13 Jul 2010
    Messages:
    204
    Likes Received:
    0
    Reputations:
    0
    как удалить
    все что идет после&
    пример: текст ололо&=any&num=&rch=e&sf=
    хочу получить на выходе текст ололо


    помоги составить регулярку, иммено через прег матч, потому что строка может быть как в вин 1251 так и ютф 8. когда в ютф 8 не получается
     
  6. phenix1025

    phenix1025 New Member

    Joined:
    20 Oct 2012
    Messages:
    11
    Likes Received:
    1
    Reputations:
    0
    iconv + $s = split('&',$str); print $s[0];
    В результате получишь свой результат в начальной кодировке.
     
  7. ufaclub

    ufaclub New Member

    Joined:
    13 Jul 2010
    Messages:
    204
    Likes Received:
    0
    Reputations:
    0

    <?
    $frazapoisk='регистрация ооо в Уфе&where=any&num=10&rch=e&sf=10';
    $frazapoisk = $str;

    iconv + $s = split('&',$str);
    print $s[0];
    ?>

    вот так не работает? где ошибся?
     
  8. phenix1025

    phenix1025 New Member

    Joined:
    20 Oct 2012
    Messages:
    11
    Likes Received:
    1
    Reputations:
    0
    <?
    $frazapoisk='регистрация ооо в Уфе&where=any&num=10&rch=e&sf=10';

    $s = split('&',$frazapoisk);
    print $s[0];
    ?>