You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在ASP.NET中替换drpFPortofCall.SelectedValue.ToString中的数值?

提取字符串中~符号前的内容

你的需求是从类似AEJEA~12060、INNSA~12430的字符串里,只保留~符号前面的字母部分。之前用Replace方法只是去掉了~,但数字还留在字符串里,所以达不到预期效果,这里给你两种可行的实现方式:

方法一:使用Split分割字符串

这是最简单的方式,直接按~把字符串拆分成数组,取第一个元素即可:

Dim frmport As String = drpFPortofCall.SelectedValue.ToString()
frmport = frmport.Split("~"c)(0)

不管~后面跟着什么内容,这种方法都会直接截取前面的部分。

方法二:使用IndexOf+Substring组合

如果需要考虑字符串中可能没有~的情况,这种方式更稳妥:

Dim frmport As String = drpFPortofCall.SelectedValue.ToString()
Dim tildePosition As Integer = frmport.IndexOf("~")
' 只有找到~符号时才截取,否则保留原字符串
If tildePosition > -1 Then
    frmport = frmport.Substring(0, tildePosition)
End If

先定位~的位置,确认存在后再截取从开头到该位置的子串,避免出现索引越界的问题。

内容的提问来源于stack exchange,提问作者Manav Srivastava

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 23:48:22