标签: preg-replace

REGEX:如何使用PHP代码从javascripts中删除注释

我将所有javascriupt组合成一个整齐的文件,以降低http请求!我坚持删除评论/* comments */// comments.我的水平远远低于缩小或解析的东西.我知道如何制作通心粉串.任何比这更复杂的东西,你在我的电脑或厨房里都找不到,所以:

同时将它合并到一个文件,我想删除所有评论.
什么是正确的正则表达式?

<?php
header('Content-type: text/javascript');    
$offset = 60 * 60 * 24; // Cache for a day
header ('Cache-Control: max-age=' . $offset . ', must-revalidate');
header ('Expires: ' . gmdate ("D, d M Y H:i:s", time() + $offset) . ' GMT');

ob_start("compress");
function compress($buffer) {

# NOT SURE, not all new lines are removed??
# remove tabs, spaces, newlines, etc.
$buffer = str_replace(array("\r\n", "\r", "\t", '  ', '    '), '', $buffer); …
Run Code Online (Sandbox Code Playgroud)

javascript php regex preg-replace pattern-matching

2
推荐指数
1
解决办法
6285
查看次数

PHP preg_replace删除字符串中的第一个HTML元素

我想在PHP中删除html字符串的整个第一个元素(它总是一个段落).

我目前的方法是使用:

$passage = preg_replace('/.*?\b'.'</p>'.'\b/s', '', $passage, 1);
Run Code Online (Sandbox Code Playgroud)

由于中的特殊字符,这不起作用 </p>

我知道以下内容会在单词"one"出现之前删除字符串中的所有内容

$passage = preg_replace('/.*?\b'.'one'.'\b/s', '', $passage, 1);
Run Code Online (Sandbox Code Playgroud)

php preg-replace

2
推荐指数
1
解决办法
1961
查看次数

在php preg_replace中允许点

我正在使用完美的PHP清理网址生成器来清理一些上传脚本的文件名(以及在其他地方清理我的永久链接).我如何修改它以允许.如果函数看起来像这样:

setlocale(LC_ALL, 'en_US.UTF8');
function toAscii($str, $replace=array(), $delimiter='-', $exception = '') {
    if( !empty($replace) ) {
        $str = str_replace((array)$replace, ' ', $str);
    }

    $clean = iconv('UTF-8', 'ASCII//TRANSLIT', $str);
    $clean = preg_replace("/[^a-zA-Z0-9\/_|+ -]/", '', $clean);
    $clean = strtolower(trim($clean, '-'));
    $clean = preg_replace("/[\/_|+ -]+/", $delimiter, $clean);

    return $clean;
}
Run Code Online (Sandbox Code Playgroud)

提前致谢.

编辑稍微修改了函数以反映我的实际用法 - 抱歉.

php regex preg-replace

2
推荐指数
1
解决办法
7499
查看次数

如何使用正则表达式替换具有相同字符数的多个字符?

我有以下来源:

<font color="black">0</font><font color="white">1101100001001101</font><font color="black">1</font><font color="white">0110</font>
Run Code Online (Sandbox Code Playgroud)

并希望替换所有白色 10空格.我可以很容易地匹配它们

/<font color="white">([10]*)</font>/g
Run Code Online (Sandbox Code Playgroud)

是否有替换模式(我使用PHP)为匹配组生成相同数量的空间$1

结果应如下所示:

<font color="black">0</font><font color="white">                </font><font color="black">1</font><font color="white">    </font>
Run Code Online (Sandbox Code Playgroud)

(请忽略我在这里用正则表达式解析HTML的事实.我对正则表达式问题的解决方案比对HTML更感兴趣.)

php regex preg-replace

2
推荐指数
1
解决办法
1129
查看次数

php正则表达式如何获取字符串的最后一部分

我有一个文件whatever_files_123456.ext.我需要读取文件名中最后一个下划线后面的数字.文件名可以包含许多下划线.我只关心最后一个下划线之后和.ext之前的数字.在这种情况下,它是123456

php string preg-replace

2
推荐指数
1
解决办法
1037
查看次数

在php中使用正则表达式查找结果str

我有一个输入字符串:

$str1 = "some usefull text and garbage `~#@!&^*(()}{./";
$str2 = "`~#@!&^*(()}{./";

$result = Exclude with regular expressions all symbols from str1, which are in str2.
$result = "some usefull text and garbage";
Run Code Online (Sandbox Code Playgroud)

什么正则表达式将删除我指定的所有符号?如何以正确的方式过滤它?感谢名单!

php regex preg-replace preg-match

2
推荐指数
1
解决办法
77
查看次数

PHP preg_replace()中的正则表达式产生空结果

我正在努力使用简单转换此字符串所需的正则表达式语法:

posts/2012-03-16-23-07_an-awesome-post.md
Run Code Online (Sandbox Code Playgroud)

进入这个字符串:

an-awesome-post
Run Code Online (Sandbox Code Playgroud)

使用preg_replace()PHP函数.这是我到目前为止所得到的:

preg_replace('posts/[0-9-]*_([a-z-]*).md', '$1', 'posts/2012-03-16-23-07_an-awesome-post.md');
Run Code Online (Sandbox Code Playgroud)

没有骰子.当我将结果分配给变量并echo()输出该变量时,我什么也得不到.我的正则表达式语法有点生疏,但谷歌搜索有点让我认为,至少,我是在正确的轨道上.

php regex preg-replace

2
推荐指数
1
解决办法
4518
查看次数

带破折号或字符串末尾的任何特殊字符

我将我的字符串中的任何特殊字符转换为破折号,除了字母数字使用此字符:

return preg_replace("![^a-z0-9]+!i", "-", $str);
Run Code Online (Sandbox Code Playgroud)

但是,在某些情况下我有这个字符串:

$str = "Hello there chubby!";
Run Code Online (Sandbox Code Playgroud)

这将导致:

Hello-there-chubby-
Run Code Online (Sandbox Code Playgroud)

单词末尾的破折号让我想到了如何删除它的解决方案.

php regex preg-replace

2
推荐指数
1
解决办法
2327
查看次数

删除字符串中不需要的字符

我想问一下如何从字符串中删除一个特殊字符(从废弃页面中提取).

 4:30am
Run Code Online (Sandbox Code Playgroud)

我只是想得到时间,所以我试过,所以过滤它使用这个:

$str = 'Â 4:30am';
$new_string = preg_replace("[^A-Za-z0-9]", "", $str); 
echo '<pre>'.$new_string.'</pre>';
Run Code Online (Sandbox Code Playgroud)

但它没有改变:| 有没有解决方案/方法?

php regex preg-replace

2
推荐指数
2
解决办法
1万
查看次数

使用PHP提取字符串中的第一个整数

请考虑以下字符串:

$strings = array(
    "8.-10. stage",
    "8. stage"
);
Run Code Online (Sandbox Code Playgroud)

我想提取每个字符串的第一个整数,所以它会返回

8
8
Run Code Online (Sandbox Code Playgroud)

我试图用preg_replace过滤掉数字,但它返回所有整数,我只想要第一个.

foreach($strings as $string)
{
    echo preg_replace("/[^0-9]/", '',$string);
}
Run Code Online (Sandbox Code Playgroud)

有什么建议?

php preg-replace

2
推荐指数
3
解决办法
1万
查看次数