标签: str-replace

在 PHP 中将 HTML 重新处理为单行字符串的最佳方法是什么?

我正在开发一个 WordPress 插件,它将帖子和相关数据导出为制表符分隔的文本格式。它即将完成,但我正在努力寻找将 HTML 重新处理为单个字符串的最佳方法。

我使用 preg_replace 和 htmlentities 的组合,但它变得有点混乱。

我确信一定有一种首选方法可以做到这一点,所以我想我应该和你确认一下?我在谷歌上找不到任何合适的东西。

html php preg-replace str-replace

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

替换数据框列中的多个字符串

我一直在尝试使用 str_replace_all 替换 R 中数据帧的列中的多个字符串。

目前我已经写了一些简单的东西(如下)

mydata$Final_Result <- str_replace_all(mydata$Final_Result, 'Absent', 'A')
mydata$Final_Result <- str_replace_all(mydata$Final_Result, 'Present', 'P')
Run Code Online (Sandbox Code Playgroud)

我在同一列中还有其他字符串需要替换。所以我正在寻找一种更优雅的方法来在一行中编写此代码。

如果有人能就如何做到这一点提出建议,我将不胜感激。

string r str-replace stringr

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

mutate(across()) 中的 str_replace 匹配来自 cur_column 的第 n 个字符

我的目标总结

我有以下数据帧结构:

my.df <-data.frame("col1_A.C"=c("AA","AC","CC"),
                   "col2_A.T"=c("TT","AT","TT"),
                   "col3_C.G"=c("GG","CG","CG"))

my.df
#   col1_A.C col2_A.T col1_C.G
# 1       AA       TT       GG
# 2       AC       AT       CG
# 3       CC       TT       CG
Run Code Online (Sandbox Code Playgroud)

对于每一列,我想用字符“R”替换与列名的倒数第三个字符匹配的任何字符。

使用上面的数据框,我想获得这个:

my.df2 <- data.frame("col1_A.C"=c("RR","RC","CC"),
                   "col2_A.T"=c("TT","RT","TT"),
                   "col3_C.G"=c("GG","RG","RG"))

my.df2
#   col1_A.C col2_A.T col1_C.G
# 1       RR       TT       GG
# 2       RC       RT       RG
# 3       CC       TT       RG
Run Code Online (Sandbox Code Playgroud)

例如,在第一列中,列名是col1_A.C,而A是倒数第三个字符。所有的由此的被替换为[R

到目前为止我的代码

为此,我编写了以下代码

my.df2 <- my.df %>% mutate(across(.cols=everything(),
                                  .funs=str_replace_all(.,
                                                        substr(cur_column(),
                                                               nchar(cur_column()-2),
                                                               nchar(cur_column()-2)
                                                              ),
                                                        "R")
                                  )
                           )
Run Code Online (Sandbox Code Playgroud)

不幸的是,生成的数据框 my.df2 …

r str-replace dplyr mutate across

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

数组中的str_replace字符串自动增加

我们可以做些什么来删除page = 2& From:

"page=2&param1=value1&param2=value2" or
"param1=value1&page=2&param2=value2".
Run Code Online (Sandbox Code Playgroud)

成为:

"param1=value1&param2=value2" or
"param1=value1&param2=value2".
Run Code Online (Sandbox Code Playgroud)

在page = 2的情况下,2是任何自然的否.即(0到32000).

问候,

php arrays string str-replace

0
推荐指数
1
解决办法
321
查看次数

使用str_replace用php替换文本

可能重复:
使用preg_match解析youtube
视频ID仅从youtube的网址中获取视频ID

我现在使用这样的东西,但是我收到了很多错误......

$video_id = $_GET['url'];

$video_id = str_replace('http://www.youtube.com/watch?v=','',$video_id);
$video_id = str_replace('&feature=related','',$video_id);
$video_id = str_replace('&feature=fvwrel','',$video_id);
$video_id = str_replace('&hd=1','',$video_id);
$video_id = str_replace('&feature=relmfu','',$video_id);
$video_id = str_replace('&feature=channel_video_title','',$video_id);
$video_id = str_replace('&feature=list_related','',$video_id);
$video_id = str_replace('&playnext=1','',$video_id);
$video_id = str_replace('_player','',$video_id);
Run Code Online (Sandbox Code Playgroud)

问题是youtube有'&feature ='和其他人的多个url变量

我想从youtube网址中提取的唯一内容是唯一的视频ID

例如://www.youtube.com/watch?v = lgT1AidzRWM&feature = related

在id或之前没有任何内容

有人可以帮我搞定吗?

php str-replace

0
推荐指数
1
解决办法
652
查看次数

从字符串php regex中删除所有div标签?

我在网站上有一个所见即所得.问题是用户正在将大量数据复制到其中,从而留下许多未打开且格式不正确的div标签,这些标签打破了网站布局.

是否有一种简单易行的方法可以去除所有出现的<div></div>

str_replace不起作用,因为一些div有样式和其他东西,所以它需要考虑<div style="some styling"> <div align="center">等.

我猜这可以用正则表达式完成,但是当涉及到那些时,我总是一个初学者.

php regex replace str-replace strip-tags

0
推荐指数
1
解决办法
5223
查看次数

PHP str_replace无法按预期工作,返回多个值

我有这个使用str_replace函数的代码:

$result = mysql_query("SELECT * FROM table");
$contact_link = "<a href=\"/contact-us/\" class=\"inline\" target=\"_parent\">Contact Us</a>";

while($row = mysql_fetch_array($result))
{
$answer = str_replace(array("contact us","Contact Us","Contact us") , array($contact_link , $contact_link , $contact_link), $row['answer']);
echo $answer;
}
Run Code Online (Sandbox Code Playgroud)

但是,当我输入字符串"contact us"时,它返回此值:

<a href="/contact-us/" class="inline" target="_parent"><a href="/contact-us/" class="inline" target="_parent">Contact Us</a></a>
Run Code Online (Sandbox Code Playgroud)

我无法弄清楚原因.我希望它只返回一个链接而不是两个链接封装的联系我们.我想也许是因为两个单词都以小写字母开头,所以也许它会两次返回?一次用于"联系我们",一次用于"联系我们"?我已经阅读了这个网站上的搜索结果,并进行了一些谷歌搜索,但我找不到任何有相同情况发生的事情.

如果它是相关的,我这样做的原因是,当我的客户更新他的网站时,它将返回到他的联系页面的链接.我希望有三个不同版本的联系我们,因为格式可能会根据他使用它的位置而改变.

php str-replace

0
推荐指数
1
解决办法
804
查看次数

用PHP格式化电话区号

我们的网站上有很多办公地点,每个办公地点都有一个主要电话号码 - 许多都输入了区号如下:(800) 555-5555

这是我需要他们都看,不管它是如何进入:800- 555-5555

这就是我现在所处的位置

str_replace(array( '(', ')' ), '', $this->data['location_phone']);
Run Code Online (Sandbox Code Playgroud)

虽然这删除了两个括号,但我真的只需要删除开头的一个并用短划线替换右括号.

php str-replace reformatting

0
推荐指数
1
解决办法
971
查看次数

如何将$ {Month}替换为字符串?

我想在配置文件中为某些变量创建"自定义"占位符.我以为我会使用这种语法${Variable_name}.但是当我想用值替换占位符时,我无法使其工作.我不需要打印最终值,但将其传递给另一个变量.我只使用println进行调试.字符串变量tmp包含从xml配置文件中读取的字符串.所以我需要tmp2来替换占位符的正确字符串.

String Month = "October"
String tmp = 'This is ${Month} - a month of Love'
String tmp2 = tmp

println tmp2

//println tmp.replaceAll(~/${Month}/,Month)
println tmp.replaceAll("${Month}",Month)   //prints This is ${Month} of Love
println tmp.replaceAll('${Month}',Month)   // throws an error "WARNING: Sanitizing stacktrace:java.util.regex.PatternSyntaxException: Illegal repetition near index 0" 
// desired result to be printed is "This is October
Run Code Online (Sandbox Code Playgroud)

有人可以帮助我使其工作或理解吗?我想我可以用其他一些字符来标记变量.配置文件保存为XML.

UPDATE

我希望这段代码能更好地解释我想要实现的目标

String Month = "October"


// content of the file (c:/tmp/conf.txt) is --> This is ${Month} - a month of …
Run Code Online (Sandbox Code Playgroud)

groovy placeholder str-replace

0
推荐指数
2
解决办法
6534
查看次数

如何将字符串拆分为字母

我需要导入一个2行的txt文件并将文件中的每个"e"更改为"bob"我知道你从以下开始但是我很难将字符串中的单词变成一串字母,这样我可以使用.replace("e","bob")方法.

txt文件如下:

Hey Jim, how are you doing today?
I hope all is well with you.
Run Code Online (Sandbox Code Playgroud)

我的代码如下:

text = open(input("Enter file name"), "r")
textline = text.readlines()

numline = 0

for line in textline:
    numline = numline + 1
    textword = line.split()
    lineletter = list(line)
    z = str(lineletter)
    q = z.replace('e', 'zw')

    print(lineletter)
    print(textword)
    print(z)
Run Code Online (Sandbox Code Playgroud)

然后去哪儿?

python string str-replace python-3.x

0
推荐指数
1
解决办法
93
查看次数