Выберите отдельный текстовый элемент из элемента тела с регулярным выражением - PullRequest
0 голосов
/ 26 апреля 2019

Используя regex javascript или Jquery, как выбрать одиночный символ или элемент body?Мы заметили, что в нижней части нашего сайта после нижнего колонтитула есть случайные буквы "s".Мы понятия не имеем, откуда он взялся - это действительно странно, потому что это элемент body, но он не привязан ни к какому дочернему элементу.он просто плавает между тегами сценария.

screenshot of the 's' after the footer

снимок экрана с символом 's' после нижнего колонтитула


here is the 's' in the DOM in between scripts

здесь обозначен символом "s" вDOM между скриптами


Это может быть из плагина - но в то же время мы надеялись, что сможем скрыть это, пока не найдем виновника.

Я пытаюсь выбратьсначала элемент с этим в консоли, но у меня ничего не получилось.

jQuery('body').filter( function(){ return /([s]$)/g.test( jQuery(this).text() ) } )

Однако я не могу выбрать этот элемент ... Кто-нибудь знает, как я могу это сделать?этот?Большое спасибо

Ответы [ 2 ]

1 голос
/ 26 апреля 2019

Если s является началом строки после закрывающего тега сценария и является единственным текстом в этой строке, вы можете использовать группу захвата и использовать эту группу $1 в качестве замены:

(<\/script>\s*\n)s$
  • ( Группа захвата
    • <\/script>\s\n Соответствует тегу закрывающего скрипта, затем 0+ раз символ пробела и символ новой строки
  • ) Закрыть группу захвата
  • s Совпадение s
  • $ Конец строки

Regex demo

const s = `<script type="text/javascript"><\/script>
s`;

console.log(s.replace(/(<\/script>\s*\n)s$/, "$1"));
0 голосов
/ 26 апреля 2019

Если ваше приложение php, попробуйте найти что-то подобное в начале файла php.Это фрагмент кода, который будет просто отображаться, а не выполняться.

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