1樓:甄永
例如下圖excel**中的數字和單位都在明衡或乙個單元格中,而且單位有中文的「公斤」、「千克」,還有英文的「激伍kg」,我們要用公式把這些單位前的數字提取出來。
我們可以在第乙個要提取數字的單元格(本例為b2單元格)旁的單元格中輸入公式:
lookup(12345678,left(b2,row($1:$10))*1)
這個公式用了lookup、left、row三個函式,下面簡要介紹一下各函式的意義:
lookup函式的意義為在 left(b2,row($1:$10))*1 的結果中查詢和 12345678 相等或者最相近的值。這裡的 12345678 可根據**中實際最大數字而改變,大於**中最大的數字即可。
本例**中最大的數字是 1234567 ,也就是說可以用大於1234567 的任何乙個數字來代替公式中的 12345678 。
left(b2,row($1:$10))的意義為從b2單元格左側開始提取和row($1:$10)計算結果相同位數攔輪的數字,row($1:
10)的結果是乙個陣列,可返回從1到10的數字,也就是從b2單元格左側第一位開始最少提取到第一位數,最多提取到第10位數,這裡的$10可根據**中實際最大數字的位數而改變。本例中要提取的最大位數的數字是 1234567 ,共七位,即最大隻能提取到第七位。即可以用大於7的任何乙個數字來代替$10中的10。
left(b2,row($1:$10))的後面還有乙個 *1 ,*1 的作用是遮蔽掉不是數字的英文、漢字等字元,因為它們不能乘以1。
輸入以上公式,按回車鍵後就會顯示出提取到的數字。
再對其他單元格填充公式,即可提取出其餘單元格中的數字。
如何在**中,選取前8位數?
2樓:excel小樹
b2輸入。
left(a2,8)
下拉得出的是文字格式是數字串。
-left(a2,8)
下拉得出的是8位數字。
3樓:網友
在b2輸入:
left(a2,8)
向下填充即可。
4樓:網友
直接上公式,=left(a2,8),往下填充就ok了。
vf中,如何擷取某欄位的前8位,另放一列,且這前8位中第7和第8位會有不一樣的數字。
5樓:陶萌圭雨伯
用慶顫函式left可以擷取左邊搜配8位left(欄位名,8)
用函式substr就可以擷取第8位世差指,substr(欄位名,8,1)
字串中含有中文和字母,怎麼乙個個擷取出來
6樓:網友
頁面中很多情況下會遇到要擷取字串的情況,但是中文和英文所佔的長度不同會造成。
同樣是擷取10個字串的悔仿長度,中英文的顯示卻會是很彆扭的結果n久前找過乙個擷取的,不過因為沒有留下記錄找不到了。
餘前歷看到的方法還是覺得有點噁心,所以就自己寫了乙個實現原理很簡單,就是豎搜擷取字串,檢視每個字元所佔位元組。
怎麼只提取前陣列中的前八位資料
7樓:折柳成萌
函式。是提取從左第乙個字元開始,取幾位,=left(a1,11)即取前個11字元;
函式:是從第幾位開始,提取幾基穗位,=mid(a1,1,4)即從第1位起,取4位;
函式:是從右起提取位數,即從後面向前數提取幾位,=right(a1,3)即取後3位。
方法很多,看具體數鍵鋒攔據而定,是固定取前稿胡11個字元,直接用left函式是正確的選擇。
sql 擷取前8位和最後4位
8樓:baby_原來
1、substring
返回字元、binary、text 或 image 表示式的一部分。有關可與該函式一起使用的有效 microsoft® sql server™ 資料型別的更多資訊,請參見資料型別。
語法 substring(expression , start , length )
引數 expression
是字串、二進位字串、text、image、列或包含列的表示式。不要使用包含聚合函式的表示式。
start是乙個整數,指定子串的開始位置。
length
是乙個整數,指定子串的長度(要返回的字元數或位元組數)。
substring()
任意位置取子串。
2、left() 和right()
左右兩端取子串。
示例:declare @str varchar(100);
set @str='gwengnwelgkweg';
select substring(@str,0,8)--從左邊第一位開始,擷取8位。
select substring(@str,len(@str)-4,4)--擷取後4位。
left() right()
select left(@str,8) -擷取前8位。
select right(@str,4) -擷取後4位。
如何在excel中批量提取中文漢字和英文字母
9樓:張三**
1. 在資料來源的右邊分別命名新的兩列為「中文名」和「英文名」,然後將資料來源複製到「中文名」這一列。
2. 為了確保英文名字可以連在一起,這裡我們在有空格的英文名字中間新增乙個「-」選擇「中文名」下所有資料來源,按ctrl+f,點選「替換」,在「查詢內容」輸入空格,「替換為」輸入「-」點選「全部替換」。
3. 游標放在「中文名」和「英文名」的界線中間,然後將「中文名」的列寬縮小至第乙個漢字的距離。
4. 在選單欄的「開始」找到排序,選擇「內容重排」,然後就會將中英文分開。
5. 將「中文名」的資料複製到「英文名」列下。
6. 選擇「中文名」的資料來源,在選單欄的「資料」,點選「篩選」。
7. 點選資料來源的篩選圖示,找到「文字篩選」,選擇「自定義篩選」。
8. 選擇「小於或等於」,後面框內輸入乙個漢字「吖」,這樣篩選的時候就會避免把中文字篩掉。
9. 選擇所有的英文,然後按delete鍵,這樣就只留下了中文字。點選篩選器圖示,點選「從「中文名」清除篩選」。
10. 同理在「英文名」這一列,自定義篩選,選擇「大於或等於」,同樣輸入之前的漢字「吖」,這樣就會把漢字顯示出來。同樣,選擇所有的中文字,按delete鍵刪除,然後點選篩選器圖示,點選「從「英文名」清除篩選」。
11. 回到選單欄「資料 > 篩選」,撤銷一下。在中文名這一列,選擇所有資料來源,回到選單欄的「開始」,點選排序的圖示,選擇「內容重排」,這樣會把所有的中文名字組合到一起。
12. 接下來我們要把空格去除,選擇中文名的資料來源,按住f5定位,選擇定位條件「空值」,然後右擊滑鼠,選擇「刪除 > 下方單元格上移」。同理在「英文名」列下按照同樣的操作完成即可。
sql 怎樣擷取指定位置的中英文混合體 例如 擷取『我是中國人0001』 的8 至 14位元組
10樓:匿名使用者
create table #temp( test varchar(20) )
insert into #temp values('我是中國人0001');
goselect
convert(char(8), test) as [0to8],convert(char(14), test) as [0to14],right(convert(char(14), test), len(convert(char(14), test)) len(convert(char(8), test)))as [8to14]
from#temp
go0to8 0to14 8to14
我是中國 我是中國人0001 人0001
1 行受影響)
sql server 下面, 可以這麼寫。
11樓:異次元**
如果是char的話就用substring(4,3)引數1的意思是從第幾位開始擷取,引數2的意思是擷取幾位。
注意:sql裡面第一位是1,不再是winform裡的0
12樓:匿名使用者
似乎只能截字元不能截位元組。。。
j**a 擷取前幾位的字串,求**。 string str="2013060823"; 擷取前8位字串。。求解,最好是用正則。
13樓:網友
正則實現這個要求沒有直接substring來的快。。還是使用substring吧。。。
中文和英文分別是啥字型,英文和中文 分別是什麼字型
中文字型名叫 方正行楷簡體 英文本型名叫 uighursoft art 1 中文楷體,英文time new roman 英文和中文 分別是什麼字型 20 漢字字型 華康少女文字w5 英文跟 forte 接近!圖中的中文和英文分別是什麼字型?中文是綜藝體,方正綜藝簡體或者漢儀綜藝體簡都可以,英文是方正...
中文翻英文,中文的位址翻譯成英文怎麼寫?
中文翻譯英文,把句子分成幾個詞語,先分段翻譯出來,再用句式連起來,最主要的是要掌握紮實的語法。英文翻譯中文,把意思搞懂,但是要翻譯成中文常用的表達方式和順序,只要意思達到就可以。有什麼軟體可以把中文翻譯成英語的 簡歷的話如果你能夠把中文版的先做好,排版排好,再用qtrans快翻就很省心了。因為這個q...
含有“莉”字的英文名,越多越好,中文翻譯過來帶有莉的英文名
樂略 alice 阿莉斯 艾莉斯 adelaide的異體alicia 阿莉西亞 艾麗西亞 adelaids的異體alison 阿莉森 艾莉森 alice 的暱稱ally 阿莉 alice 的暱稱 amelia 阿米莉亞 beverl e y 貝弗莉 billie 比莉 cecilia 塞西莉亞 ce...