在每一行打印出带有特定空格的文本

时间:2019-08-05 20:45:00

标签: oracle plsql

我是PL / SQL的新手,并尝试编写PL / SQL代码以实现text_warp函数。

我不认为这项工作很复杂,但是我对如何用特定的空格分隔行一无所知,例如:

我想换行以适合给定的行长。而且我的程序不会破坏工作。换句话说,在开始新行之前,它应尝试在一行中尽可能多地容纳单独的单词。

在这种情况下,我尝试使用内置函数substr和chr,但是,如果指定行的空间,我对如何自动进行下一行一无所知...(假设我尝试将其放入在上述情况下,每行10个空格)

ACCEPT p_text PROMPT 'Please enter your text : ';
ACCEPT p_line_length PROMPT 'Please enter your line length : ';

declare
    my_text varchar2 (80):= '&p_text';
    my_line_length number(80) := '&p_line_length';

    miss_text_exception exception;
    miss_line_exception exception;
    VALUE_ERROR exception;


begin
    if my_text is null THEN        
        raise miss_text_exception;

    elsif my_line_length is null THEN
        raise miss_line_exception;


    else
        DBMS_OUTPUT.PUT_LINE(INSTR(SUBSTR(url, pos + 4), '.'));

    end if;

exception
    when miss_text_exception then
        DBMS_OUTPUT.PUT_LINE('please enter text you want');
    when miss_line_exception then
        DBMS_OUTPUT.PUT_LINE('please enter line length you want');

end;
/

这是我希望打印的内容:

 1 2 3 4 5 6 7 8 9 0 (this is example space for each line I type in)

 " h e l l o ,   
 w o r l d !   I 
 a m   n e w   t o 
 s q l ! " 

任何建议都值得赞赏!

0 个答案:

没有答案