如何解决如何在serde_json :: Value :: String中修改字符串?
我有一个serde_json::Value
,其中包含我要修改的字符串,如果可能的话,不克隆该字符串。我想你会这样:
<div class="textSection">
<div class="eng about" id="eng">
<p>SHEK LEUNG
</p>
</div>
<div class="mandarin about transparent" id="man">
<p>
「為Samson畢業後在倫敦創立的品牌
</p>
</div>
</div>
<button class="langChange">⥃</button>
</div>
但是没有let mut value = Value::String("Hello world".to_string());
let mut string = value.as_mut_string().unwrap();
string.push('!');
这样的东西。我可以这样做:
as_mut_string
但是,这既丑陋又效率低下,因为我必须克隆字符串。有更好的解决方案吗?
解决方法
serde_json::value::Value
是enum
,您可以对其进行模式匹配:
let mut value = Value::String("Hello world".to_string());
if let Value::String(string) = &mut value {
string.push('!');
}
println!("{:?}",value);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。