Удаление ASCII «ИЛИ» из строки в JavaScript - PullRequest
1 голос
/ 25 июля 2011

Я пытаюсь удалить либо «или» из строки, чтобы оставить оставшийся текст в javaScript.

Попробовал это безрезультатно:

$('body').delegate('.SearchPagination > a', 'click', function(e){
    e.preventDefault();
    var $this = $(this),
        txt = $this.text().toLowerCase(),
        txt = txt.replace(/«|»/g, ''),
        txt = $.trim(txt),
        page = '&page=';
        console.log(txt);
    if (txt === 'next' || txt === 'previous'){
        // get the current page value
        var active = $this.parent().find('.active').txt();
        if (txt === 'next'){
            // add one
            page += (active + 1);   
        } else if (txt === 'previous'){
            // subtract one
            page += (active - 1);
        }
    } else {
        // invoke search with the page number
        page += txt;
    }
    console.log(page);  
    //icisSite.icisSearch.search(page);
});

Ответы [ 2 ]

4 голосов
/ 25 июля 2011

Вместо использования & laquo; в регулярном выражении попробуйте скопировать и вставить символ левой стрелки, отображаемый в браузере - то есть знак ". Я попытался это сделать, и он был заменен правильно.
Таким образом, ваше регулярное выражение должно выглядеть следующим образом -

 txt = txt.replace(/«|»/g, '')
1 голос
/ 25 июля 2011

Вы пробовали:

txt = txt.replace('«','').replace('»', '');

Но я не думаю, что в этом смысл, так как ваше регулярное выражение верно, так что на всякий случай (ваше правильное выражение мне кажется правильным), вы уверены?что, когда вы получаете текст, htmlentities кодируются в первую очередь? Может быть, страница находится в UTF-8 и объекты не кодируются, но отображаются без кодировки h

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...