请帮助我。
可以使用特定字符拆分字段值吗?这是我的样本表
value
10uF
2K
1.0uF
200UF
我想让它分开:
value capacitance/resistance
10 uF
2 K
1.0 uF
200 UF
PS:我使用的是Oracle,数字应该与字母分开
答案 0 :(得分:0)
使用拆分
array split ( string $pattern , string $string [, int $limit = -1 ] )
<?php
// Delimiters may be slash, dot, or hyphen
$date = "04/30/1973";
list($month, $day, $year) = split('[/.-]', $date);
echo "Month: $month; Day: $day; Year: $year<br />\n";
?>
答案 1 :(得分:0)
您可以使用正则表达式:
with src as
(select '10uF' as val from dual
union all
select '2K' from dual
union all
select '1.0uF' from dual
union all
select '200UF' from dual)
select
regexp_substr(val,'[[:digit:]]+[\.]*[[:digit:]]*',1) as val
,regexp_substr(val,'[[:alpha:]]+',1) as resistance
from src
答案 2 :(得分:0)
这是我的尝试,正则表达式:
SELECT
val, regexp_substr(val,'[[:digit:]|.]*') num,
substr(val,regexp_instr(val,'[^[:digit:]|^\.]')) chars
FROM (
select '10uF' as val from dual union all
select '2K' from dual union all
select '1.0uF' from dual union all
select '200UF' from dual
);
第一个表达式首先匹配数字和点的第一个匹配。 第一个表达式之后的第二个子串值(它否定了它)。