Ir para conteúdo

John Snow

Members
  • Total de itens

    2
  • Registro em

  • Última visita

Reputação

0 Comum

Sobre John Snow

  1. John Snow

    REGEX das variações da IMG TAG em BBCODE

    Bom, após muitos testes eu consegui fazer REGEX para cada cenário e funcionou perfeitamente. Caso não tenha ficado claro, esse REGEX será usado em uma função que irá pegar uma variável (campo texto salvo no formato BBCODE dentro de um BD através de um formulário com WYSIWYG EDITOR) e o mostrará como HTML. Usar o BBCODE neste caso previne XSS attacks pois não preciso usar o Header('X-XSS-Protection: 0'); no PHP em caso de mandar o conteúdo em XHTML (que ocasiona o erro ERR_BLOCKED_BY_XSS_AUDITOR no Google Chrome) ou transformar o conteúdo do campo através de JS em base 64 encode para depois decodificar no PHP. Caso você venha a precisar disso, segue abaixo a minha solução. Melhorias são sempre bem vindas: '#\[img=(.+)\]#Usi', '#\[img=+(\d+)x+(\d+)\](.+)\[/img\]#Usi', '#\[img[\s|=]+[width=]+([0-9]+)?[\s|x]+[height=]+([0-9]+)\](.+)\[/img\]#Usi', '#\[img[\s]+[width=]+([0-9]+)\](.+)\[/img\]#Usi', Esse REGEX cobre os seguintes formatos de IMG TAG [img]img_patch[/img] [img=300x200]img_patch[/img] [img width=200 height=150]img_patch[/img] e [img=width=130xheight=50]img_patch[/img] [img width=200]img_patch[/img]
  2. John Snow

    REGEX das variações da IMG TAG em BBCODE

    Fala pessoal! Sou novato por aqui e estou com um problema que acredito ser simples para programadores mais experientes. Eu preciso converter a IMG TAG de BBCODE para HTML e para tal farei uso de REGEX em PHP. O problema é que existem 6 variações da IMG TAG, são elas: [img]img_patch[/img] [img=200x150]img_patch[/img] [img width=200 height=150]img_patch[/img] [img=width=200xheight=150]img_patch[/img] [img width=200]img_patch[/img] Estou testando aqui e consegui efetuar o REGEX para as 2 primeiras variações: '#\[img=(.+)\]#Usi', '#\[img=?(\d+)?x?(\d+)?\](.*?)\[/img\]#Usi', Preciso de ajuda para as outras variações ou mesmo para um REGEX único que englobe todas as variações. Agradeço muito sua ajuda!!!
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.