在PL / SQL中计算字符串中字符和单词的数量

在PL / SQL中计算字符串中字符和单词的数量

我们有一个任意长度的字符串,并且任务是使用 PL/SQL 计算字符串中字符和单词的数量。

PL/SQL 是 SQL 和编程语言的过程化特征的结合。它是由 Oracle Corporation 在 90年代初开发的,旨在增强 SQL 的功能。PL/SQL 是嵌入在 Oracle 数据库中的三种关键编程语言之一,另外两种是 SQL 本身和 Java

在 PL/SQL 块中,我们有 DECLAR 块,用于声明编程中使用的变量,还有 BEGIN 块,在其中编写给定问题的逻辑,

阅读更多:MySQL 教程

例如

输入 − string str = “Tutorials Point”
输出 − 字符数是:15
单词数是:2

解释:在给定的字符串中,我们一共有 2 个单词,因此单词数为 2,在这些单词中我们有14个字符,另外一个是给定字符串中的一个空格。

输入 − string str = “诚实是最好的策略”
输出 − 字符数是:26
单词数是:5

解释 - 在给定字符串中,我们一共有 5 个单词,因此单词数为 5,在这些单词中我们有24个字符,另外四个是给定字符串中的 4 个空格。

下面程序中使用的方法如下

  • 输入任意长度的字符串并将其存储在一个变量中,例如str

  • 使用 length() 函数计算字符串的长度,它将返回一个整数值,表示字符串中字母的数量,包括空格。

  • 从i到0遍历循环,直到字符串 str 的长度

  • 使用 substr() 函数,它将返回字符串中子字符串的数量,即字符串中单词的数量。

  • 并且,每次循环迭代将增加字符计数,它将一直运行到字符串的长度。

  • 打印字符串中字符和单词的数量。

例如

DECLARE
      str VARCHAR2(40) := 'Tutorials Point';
      nchars NUMBER(4) := 0;
      nwords NUMBER(4) := 1;
      s CHAR;
BEGIN
   FOR i IN 1..Length(str) LOOP
      s := Substr(str, i, 1);
      nchars:= nchars+ 1;
      IF s = ' ' THEN
      nwords := nwords + 1;
      END IF;
END LOOP;
dbms_output.Put_line('字符数是:'
   ||nchars);

dbms_output.Put_line('单词数是: '
   ||nwords);
END;

输出

如果我们执行上面的代码,将生成以下输出 –
字符数是:15
单词数是:2

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

MySQL 教程