fortran中提取字符串中可见字符的索引
来源:互联网 发布:艾媒咨询数据 编辑:程序博客网 时间:2024/06/05 18:31
fortran中常常需要提取字符串中可见字符的索引,下面是个小例子:
!=============================================================subroutine TrimIndex(InStr,LeftIndex,RightIndex,status)!------------------------------------------------------------!---识别InStr中左右有效可见字符(33-126)的索引!---如果status==0,则识别正确!---吴徐平2013-07-20(wxp07@qq.com)!------------------------------------------------------------Implicit NoneCharacter(Len =*),Intent( IN ) :: InStrInteger,Intent( INOUT)::LeftIndex,RightIndex,status!------------------------------------------------------------Integer ::i!------------------------------------------------------------LeftIndex=0do i=1,LEN(InStr),1if ((IACHAR(InStr(i:i)) >32 ).AND.(IACHAR(InStr(i:i)) <127) ) thenLeftIndex=i !-左边有效可见字符(33-126)的索引EXITend ifend do!------------------------------------------------------------RightIndex=LEN(InStr)+1do i=LEN(InStr),1,-1if ((IACHAR(InStr(i:i)) >32 ).AND.(IACHAR(InStr(i:i)) <127 )) thenRightIndex=i !-右边有效可见字符(33-126)的索引EXITend ifend do!--------------------------if ((LeftIndex>0 ).AND. (LeftIndex<=RightIndex) .AND. (RightIndex<=LEN(InStr)))thenstatus=0 !-操作正确elsestatus=-1 !-操作有误end if!--------------------------end subroutine TrimIndex
下面是测试程序:
program TestTrimIndex!-----------------------------------------!测试TrimIndex的程序!吴徐平 2013-07-20!wxp07@qq.com!编译:gfortran TestTrimIndex.f90!-----------------------------------------implicit noneinteger :: count !-命令行参数的个数CHARACTER(len=24) :: InStr !命令行参数Integer::LeftIndex,RightIndex,status,i!-----------------------------------------count = command_argument_count() !获取主程序命令行的输入参数的个数 !------------------------------------ if (count>0) then do i=1,count CALL get_command_argument(i, InStr) call TrimIndex(InStr,LeftIndex,RightIndex,status) if (status==0)thenwrite(*,*)'<'//InStr//'>'write(*,*)'<'//InStr(LeftIndex:RightIndex)//'>'write(*,*)LeftIndexwrite(*,*)RightIndexend ifend doelse write(*,*) 'You should input an argument!'end if !------------------------------------ end program上面的子程序常用来查找字符串中第一个和最后一个不是空格字符的索引.
有图有真相,如下:
- fortran中提取字符串中可见字符的索引
- 提取字符串中特定的字符(或者子字符串)
- 提取字符串中出现率最高的字符
- java中如何提取多个字符串相同的字符
- 从字符串中循环提取字符
- 从一个字符串中提取中文字符
- 字符串中不可见字符引起的创建文件失败的问题
- 字符串中数字的提取
- Fortran中处理字符串数字和文件的模块StrNum
- 关于在一段字符串中提取所有两个字符中间的字符串
- 从一字符串中,提取以指定字符分隔的字符串数组
- 提取字符串中为数字的字符串
- fortran 中字符串数字混合读取
- 大的字符串的中数据转化为数字,字符数值的提取转化,atoi();
- 字符窜中提取中文的方法
- fortran中整数的范围
- 提取字符串中数字、中文、英文字符…
- 小心不可见字符组成的不可见字符串
- SQL SERVER 究竟什么时候写日志
- python的线程处理模块——thread,threading
- Oracle数据库日常维护知识总结
- const参数,const返回值与const函数
- python的时间处理模块 time
- fortran中提取字符串中可见字符的索引
- Lua Faq翻译之为什么lua中没有类似于+=的操作符以及用Lua实现C++中的<<操作符
- 题1021、1022、1023
- 年度网络购物十大被投诉网站淘宝、当当位居前二正文
- Java虚拟机类加载顺序研究
- Struts 2工作流程
- Java read and write csv file(注意事项)
- curl 命令使用
- Spring framework内容整理