Recomendado: Strings marcados com ASP especificam que são insensíveis ao caso O código de função de substituição comum é o seguinte: Destaque da função pública (s, f) dim tl, tm, tr, k tl = tm = tr = s k = Instr (1, tr, f, 1) faz enquanto k0 tl = tl esquerdo (tm, k-1) tm = mid (tr, k, len (f)) tl = tl span = '' cor): Red 'tm (k, len (f)) tl = tl span =' tr = direita (tr, len (tr) -len (f) -k+1) k = instrum (1, tr, f, 1) hig loop hig
Atualmente, ainda existem bugs, e a última página de teste é: http://www.reallydo.com/getimg.asp
A página de análise regular está em: http://jorkin.reallydo.com/article.asp?id=380
Se você encontrar um bug, deixe uma mensagem mais tarde, obrigado.
1.31 Correção
src = os espaços depois que não podem corresponder corretamente. Fixo.
Ocorreu um erro quando src = '' está vazio. Fixo.
Foi encontrado um bug: apenas um pode ser retido quando há vários espaços no caminho da imagem. Não corrigido.
2.18 Correção
Quando o caminho da imagem tem vários espaços, apenas um bug pode ser retido. Fixo.
<%
'Função: obtenha todos os endereços de imagem e salve -os em uma matriz.
'Fonte: http://jorkin.reallydo.com/article.asp?id=448
'A função replacEall é necessária: http://jorkin.reallylydo.com/article.asp?id=406
Função getImg (sString)
Dim Sreallydo, Regex, Irellydo
Dim Omatches, cmatch
'// define uma matriz vazia
IRALLYDO = -1
Redim Areallydo (Irellydo)
Se IsNull (SString) então
getImg = areallydo
Função de saída
Final se
'// Formato o código HTML
'// traga cada quebra de linha <img para facilitar a substituição regular
sreallydo = sString
Em erro de erro em seguida
Sreallydo = Substitua (Sreallydo, VBCR,)
Sreallydo = Substitua (Sreallydo, Vblf,)
Sreallydo = Substitua (Sreallydo, VBTAB,)
sreallydo = substituir (srellydo, <img, vbcrlf & <img, 1, -1, 1)
sreallydo = substituir (sreallydo, />, />, 1, -1, 1)
sreallydo = replaceAll (sreallydo, =, =, true)
sreallydo = replaceAll (sreallydo,>,>, true)
sreallydo = substituir (sreallydo,> <,> & vbcrlf & <)
Sreallydo = Trim (Sreallydo)
Definir regex = novo regexp
regex.IGNORECASE = true
regex.global = true
'// Remova OnClick, Onload e outros scripts
regex.pattern = /sOn]
sreallydo = regex.replace (sreallydo)
'// Coloque o endereço da imagem SRC sem cotações
regex.pattern = <img.*?/ssrc = ([^// '/s] [^//'/s>]*).*?>
sreallydo = regex.Replace (sreallydo, <img src = $ 1 />)
'// corresponde regularmente ao endereço SRC da imagem
http://bizhi.cncms.com/
regex.pattern = <img.*?/ssrc = ([// ']) ([^//']+?)/1.*?>
Set omatches = regex.execute (sreallydo)
'// salve o endereço da imagem na matriz
Para cada cmatch em omatches
IRALLYDO = IRALLYDO + 1
Redim Preserve Areallydo (IRALLYDO)
Areallydo (IRALLYDO) = regex.Replace (cmatch.value, US $ 2)
Próximo
getImg = areallydo
Função final
%>
<%
'Uso: muitas pessoas me perguntam como usá -lo, mas, de fato, como usar a matriz.
scontent = campo de código html '// scontent representa o código HTML. Acontece que se você escreve ORS, por que não entende que é um conjunto de registros? . .
Dim Aimages: Aimages = getImg (scontent) '// Defina uma matriz e use -a para armazenar todos os endereços de imagem analisados
'Liste os endereços de todas as fotos:
Para i = 0 para ubound (aimages)
Response.Write (<b> Coisas e I + 1 e Endereço da imagem: </b> & AIMAGES (i) & <r />)
Próximo
'Liste o primeiro endereço da imagem:
Se Ubound (Aimages)> -1 então Response.Write (<P> <b> Primeira imagem Endereço: </b> & AIMAGES (0) & </p>)
'Liste o último endereço da imagem:
Se Ubound (Aimages)> -1 então Response.Write (<P> <b> Última imagem Endereço: </b> & Aimages (Ubound (Aimages)) & </p>)
%>
Compartilhar: Como substituir a substituição no ASP, caso insensível Vamos primeiro olhar para a descrição detalhada do parâmetro da string de retorno, onde um número especificado de substrings é substituído por outra substring. Sintaxe Substituir (Expressão, Localizar, substituir por [, compare [, contagem [, start]]]]) A sintaxe da função de substituição tem os seguintes parâmetros: parâmetro Descrição Expressão necessária. Pacote de expressão de string